-
1394arm驱动
该驱动实现了1394在ARM开发板上的收发数据的功能(异步读,异步写),使用DMA传输方式对数据进行收发。该代码已经过测试可用
- 2022-12-15 20:40:04下载
- 积分:1
-
软件定时器
应用背景
我们在做单片机程序时,经常会用到多个定时器,这时我们就需要各个配置多个不同的TIMER,有时TIMER不够用,有时TIMER配置过多,标志过多,程序写着写着就乱了,就算是理清了,也会造成程序可读性差,可移植性低,对硬件依赖性强的缺点。
为了解决这个问题,我们可以用程序实现一个软件定时器,在内存允许的范围内,它可以实现无数个定时器、计数器功能,当需要一个定时器,只需要在程序里定义一个定时器变量,通过不同接口的调用,就可以实现定时功能;实现这一功能,只需要占用一个硬件定时器即可,大大减少了硬件TIMER的占用,提高了程序的可移植性,降低程序的复杂度。
关键技术
在这里,我们需要借鉴操作系统架构里的系统嘀嗒功能。先初始化一个硬件TIMER作为系统的心跳,用这个TIMER来驱动一个全局变量sys_pulse的递增;然后利用程序来查询变量当前值判断系统程序的执行时间,从而得现时间的间隔,再通过事件发送程序来通知任务定时已到。
一个软件定时器变量,至少需要包括三个元素,开始时间start_time,定时时长interval,事件内容event;
每当程序启动一个定时器,将当前系统的sys_pulse值赋于开始时间变量start_time, 设定定时器的定时时长interval, 和事件内容event, 然后在主循环里不断查询sys_pulse 是否大于 start_timer + interval,如果大于,则表明此定时器定时结束,然后调用事件发送函数告诉任务,定时已到,开始执行任务。
如果用户要移植此程序,只需要修改timer_init()内硬件TIMER的初始化程序即可,其它内容可以直接引用,不需要修改。
&
- 2023-04-15 22:30:04下载
- 积分:1
-
应用于linux3.0内核的stk1160驱动和v4l2的代码注释
有部分修改加注释,3.0内核可用可移植,已经有makefile和config文件了。里面加了两篇v4l2的代码注释和框架简介,对解读stk1160的驱动代码非常有用!!
- 2022-02-11 19:20:14下载
- 积分:1
-
CanOpen 基于STM32开发
应用背景基于STM32VCT6的 CIA 301 402协议开发的Canopen代码。关键技术CANopen移植到STM32代码。适用性广。完整
- 2023-05-06 17:10:03下载
- 积分:1
-
Ad7794 驱动
这是AD7794的驱动程序,可以读取AD7794芯片的AD值和寄存器值,调试通过.对于想要使用AD7794芯片的各位有很大的帮助,可以定义不同的IO管脚,用于不同的单片机芯片。
- 2023-05-11 08:50:03下载
- 积分:1
-
点亮一盏灯
该程序是一个非常简单的点灯程序。运用c语言编写程序到软件keil中运行,编译转换成HEX文件下载到单片机中。单片机的芯片型号是STC89C52,可以在网上查到它的具体资料。
- 2022-01-29 00:43:49下载
- 积分:1
-
labview虚拟仪器 安捷伦34401驱动
labview平台编程,虚拟仪器,安捷伦仪器,型号34401底层驱动,直接使用,可以提高工作效率,不用自己一条条指令解析编写...
谢谢大家支持
- 2023-07-08 15:35:04下载
- 积分:1
-
6803控制代码
LPD6803幻彩灯带驱动芯片,可以在LPC1768平台控制带有LPD6803控制芯片的幻彩灯带工作
- 2023-08-13 07:50:03下载
- 积分:1
-
stm32DHT11数字温度传感器实验程序源码
资源描述stm32DHT11数字温度传感器实验程序源码n内部有详细注释适合新手学习
- 2022-05-21 07:07:13下载
- 积分:1
-
modbus在STC12C5A上的应用
详细说明:Modbus RTU通讯协议在STC12C5A系列单片机上的实现,包括串口通讯的实现,实现了1,2,3,4,5,6,15,16号功能码的具体过程,程序编写时,考虑了调试的可配置性和可移植性,可以方便地移植到其它单片机平台上。
- 2022-03-05 20:55:53下载
- 积分:1