嵌入式Linux开发
ByteHouse
对IT行业有浓厚的兴趣
展开
-
rk3308应用篇 —— Linux 串口异步I/O框架
主框架Demo代码,初始版本V1.0.0,主要帮助大家对框架的熟悉。整个结构基于link(link.h link.c)的异步I/O机制,框架结构:实际上,整个应用程序包含的模块远比这个复杂;为了能让学者比较容易上手,这里面其实只是把最基础的部分拿出来。serial :串口程序zb_msg : 串口协议解析device :设备管理iot_schd : 调度器serial串口通信类,非常简洁,serial.h 和 serial.cpp可以直接移植到产品...原创 2020-10-13 19:14:01 · 826 阅读 · 0 评论 -
rk3308 BSP系统(Linux网关) —— RGB调色灯三路PWM驱动
硬件基础在我们的开发板上集成了一颗RGB灯组,引脚连接着主控的三路PWM输出,因此我们可以通过三路PWM输出进行调色的功能,硬件原理图如下:内核设备树我们把设备树补丁文件放在目录:~/share/patchs/pwm-dts板载的RGB灯珠连接的是主控的三路PWM(PWM1,PWM2,PWM3);这三路PWM的设备树节点在rk3308.dtsi中;默认情况下是disabled的状态,我们只需要将disabled改成okay即可,补丁文件其实就是做了这个事情,原创 2020-09-25 17:57:00 · 731 阅读 · 0 评论 -
rk3308 BSP系统(Linux网关) —— WiFi-STA工作模式
内核配置修改后的配置文件我们放在目录:~/share/patchs/wifi-config-dts和原生配置文件比较,差异点如下:CONFIG_RTL8189FS=y指定WiFi主控芯片型号:RTL8189FS。CONFIG_MWIFIEX=y外接WiFi设备(类似USB网卡)。CONFIG_MWIFIEX_SDIO=y外接WiFi设备SDIO接口支持。我们需要把改动的代码合并过去~内核设备树kernel/arch/a原创 2020-09-25 11:56:38 · 1136 阅读 · 0 评论 -
rk3308 BSP系统(Linux网关) —— Uboot串口交互终端
硬件连接我们需要一个USB转串口线来调试,硬件随便都可以,比如: 其他转换芯片如CH340,PL2303,FTP232也都是可以的。板上可以看到如下一个接口:我们使用串口2也就是UART2来做调试口,将USB转串口线的RX,TX,GND连接到板子上UART2的TX,RX,GND。波特率配置如果CONFIG_BAUDRATE不是115200,修改为115200,因为不是所有芯片都可以支持高波特率的(15000000):修改后编译U-Boot并烧录。...原创 2020-09-25 11:04:24 · 1087 阅读 · 0 评论 -
代码分享 —— Linux TCP服务器/客户端程序(link/linker)
代码目录树: 纯C语言编程只需要两个核心文件: link.h link.c 即可;C++架构的程序需要用到 link.h link.c还有linker.h linker.cpp,后者是在前者的基础上做了封装。接口的使用如下,TCP创建服务器代码:如果是C语言:C语言链接TCP服务器:核心代码采用epoll监听回调的方式实现,核心代码就是link.h和link.c,基本架构如下:由于TCP是流式数据,因此收到数据后我们通过Parser解析一个完整的报文,比如...原创 2020-09-24 22:44:34 · 570 阅读 · 0 评论 -
rk3308 BSP系统(Linux网关) —— 交叉编译
我们的整个软件工程目录在:~/workspace/Embedded_kits_rk3308prebuilts 目录存放 U-Boot、Kernel 编译使用的交叉编译工具链;u-boot 目录存放着 U-Boot 部分的源码;kernel 为内核部分源码;buildroot 目录存放 buildroot 开源项目代码,可定制根文件系统;device 目录存放板级配置及一些预置文件,开机脚本等;external 目录存放 SDK 相关库及工具源码;rkbin 目录存放 Rock原创 2020-09-24 20:03:35 · 1040 阅读 · 2 评论