驱动编译进内核和编译模块 2.6内核的源码树目录下一般都会有两个文文:Kconfig和Makefile。分布在各目录下的Kconfig构成了一个分布式的内核配置数据库,每个Kconfig分别描述了所属目录源文件相关的内核配置菜单。在内核配置make menuconfig(或xconfig等)时,从Kconfig中读出配置菜单,用户配置完后保存到.config(在顶层目录下生成)中。在内核编译时,主Makefile调用这个...
IAR中使用printf __near_func int putchar(int c)//printf输出重定向{UTX0IF = 0;U0DBUF = (char)c;while(UTX0IF == 0);return©;}
对寄存器的操作--本质还是对寄存器进行操作 1、当自身的库里对变量做了封装,即对地址做了映射,则可以直接操作,如cc2530F256:P1DIR|=0X1<<4,p1_0=12、裸机操作,如cortex-A53,boot启动前的裸机操作:#define GPIOB27_FUNC (unsigned int *)0xC001B024#define GPIOB26_OUTENB (unsigned int *)0xC001B...
查看工程是否支持C库------查看软件安装文件里是否有相应的库函数 查看工程软件的安装目录里有没有C库函数:一、zigbee:C:\Program Files (x86)\IAR Systems\Embedded Workbench 6.0 Evaluation\8051\inc二、stm32:C:\Keil_v5\ARM\ARMCC\include
单片机的串口通信---查询和中断 一、单片机与外设的通信有三种方法:查询,中断和DMA,这三种方式中,查询的话你可以理解为循环检测。在学8位单片机时我没遇到过DMA,DMA适用于传输比较大的数据量,其实也就是传输数据的时候不需要CPU参与,当传输完成会产生中断信号通知CPU,不要以为中断方式和DMA方式一样,虽然都会产生中断信号,但中断方式是通过中断服务函数不断将数据放到串口进行传送,而DMA产生的中断是数据已经传送完毕,需要进一...
延时函数 void delay_ms(int len){volatile unsigned int i = 61000len;while(i–);}int main(void){led_init();while(1){ led_on(); delay_ms(500); led_off(); delay_ms(500);}}
select-读取串口数据 转:https://blog.csdn.net/zujipi8736/article/details/86606093(等串口可以读取了,再读取串口的数据)/**功能:向串口接收一个字符参数ch:待接收的字符参数wait_usec:等待n微秒返回值:成功读入返回 0x02失败读入返回 0x03*/unsigned char uart_getchar(unsigned char *...
设备串口初始化 ①#if 0#define UART_DEV “/dev/ttyUSB0”//通过USB口连接#else#define UART_DEV “/dev/ttySAC2”//通过串口连接#endif②通过命令cat proc/cmdline查看