推荐阅读最新更新时间:2024-03-16 15:30
1_5.5.5_字符设备驱动程序之查询方式的按键驱动程序_P
目的:按键驱动,通过查询的方式获取按键值。 写出框架: a.file_operation结构体; b.入口函数中注册file_operation结构体,出口函数中卸载; c.给sysfs提供更多的信息,用来给udev自动创建设备节点(创建一个class,在这个class下面创建class device); 硬件操作; a.看原理图,引脚; b.看2440的手册; c.编程:单片机:使用物理地址;驱动:使用虚拟地址;(UA = ioremap(PA, size)) 操作:在入口函数做地址映射,在open函数中配置引脚,在read函数中读取引脚状态。 内核态向用户态传数据,使用copy_to_user函数。 test函数中
[单片机]
LPC210X定时器查询方式及如何初始化
定时器查询方式定时器初始化: 1、设置定时器分频数,为(x+1)分频 2、匹配通道X中断并复位TxTC 3、比较值(1S定时值) 4、启动并复位TxTC 如: T1PR = 99; // 设置定时器0分频为100分频,得110592Hz T1MCR = 0x03; // 匹配通道0匹配中断并复位T0TC T1MR0 = 110592/2; // 比较值(1S定时值) T1TCR = 0x03; // 启动并复位T0TC T1TCR = 0x01; 研究了好长一段时间,LPC210X的定时器,查询方式定时很简单如上面,但中断方式要操作好多寄存器,太麻烦,一直是一头雾水。好不容易理出了思路,现将一段例程粘贴备忘。 #inclu
[单片机]
51定时器通过查询方式定时
#include sbit P1_1 = P1^1; //定时器的初始化 void delay_1ms(void) { TMOD = 0x01;//采用16位计数器 TH0 = 0xFC; TL0 = 0x18; ET0 = 0; TR0 = 1; //开启 while(!TF0); TF0 = 0; TR0 = 0; } void main(void) { while(1){ P1_1 = 1; delay_1ms(); delay_1ms(); P1_1 = 0; delay_1ms(); delay_1ms(); } }
[单片机]
STM32F103的简易串口驱动(查询方式)
对于各个模块的学习,开始通常是只使用最简单的功能。这里将给出一个STM32F103的最基本的串口收、发驱动。要使用串口,就需要对串口的波特率、数据格式等进行设置。这里给出的例子是使用的USART1,它的时钟是连接在APB2上的,在计算波特率时应该使用APB2的输出时钟。另外,使用查询方式的话,还需要禁止掉串口的相关中断,以防止程序跑飞。由于STM32F103的串口引脚是跟普通IO口复用的,所以在使用之前,一定要记得初始化对应的IO口,选择为相应的第二功能,否则串口将无法正常工作。 首先对照STM32F103的数据手册,将相关寄存器的定义写好,放在USART.h头文件中。然后增加对串口的初始化、串口读写操作的函数即可。本测试程序功能很
[单片机]