#include "STC12C5A.H"
#define TIMER_RELOAD() {TL0=0x00;TH0=0xC4;}//使能T/C
初始10ms
#define MAX_TASKS 2 //任务槽最大个数.
unsigned char idata task_stack[MAX_TASKS][2];//任务堆栈. PC指针为16位,需2个字节task_st...
分类:
编程语言 时间:
2014-05-23 00:03:19
阅读次数:
341
今天测试数码管LED屏驱动,用某产品的一个共阴极的LED屏,根据电路图做数码管LED屏的检测。
代码写得有些冗长,有好几种驱动的方法,这里只是其中一种最直接的方案,抽空要做个更有效率的调用和驱动的方案。...
分类:
其他好文 时间:
2014-05-22 10:31:44
阅读次数:
283
突发奇想,如果可以用C++写单片机程序,单片机是不是更好玩......
分类:
编程语言 时间:
2014-05-22 10:07:58
阅读次数:
468
上个例子讲到驱动LED数码管,采用一种最直接的方案,对每个LED进行高低电平的控制,这样的优点是每个LED都是受控可检的,避免了由于短路造成的假象,但对于数字变化来说,写起来就非常冗余,因此这次尝试用数组的方法实现。...
分类:
其他好文 时间:
2014-05-22 09:01:51
阅读次数:
536
#include "STC12C5A.H"
#define TIMER_RELOAD() {TL0=0x00;TH0=0xC4;}//使能T/C
初始10ms
#define MAX_TASKS 8 //任务槽最大个数.
unsigned char idata task_stack[MAX_TASKS][2];//任务堆栈. PC指针为16位,需2个字节。
unsi...
分类:
编程语言 时间:
2014-05-21 08:12:12
阅读次数:
285
1、IEEE802.15.4协议
IEEE802.15.4工作组致力于无线个人区域网络(wireless personal area network, WPAN)的标准化工作,制定的IEEE802.15.4标准规定了WPAN网络的物理层(PHY)和媒体访问层(MAC)
2、ZigBee协议
ZigBee协议由ZigBee
Alliance制定。
ZigBee协议在IEEE802.15....
分类:
其他好文 时间:
2014-05-21 08:04:03
阅读次数:
377
首先要认识到DE2这块板子板子上的资源是比较多的,包括了SRAM、SDRAM、Flash、按键、SD卡接口、开头、LED、数码管等等,在初期,对于这些资源的利用还比较低,认识也比较浅,如果只是死记的话是没有太大的作用的。那么我打算在结合各个工程所用的资源分别来描述,而不是全部一下子都把它们写下来。毕...
分类:
其他好文 时间:
2014-05-19 17:32:13
阅读次数:
223
1,SEGMENT_VARIABLE(USB_bcdDevice, U16, Code) =
0x0100;code /Code segment
的作用是告诉单片机,我定义的数据要放在ROM(程序存储区)里面,写入后就不能再更改,其实是相当与汇编里面的寻址MOVC因为C语言中没办法详细描述存入的是R...
分类:
编程语言 时间:
2014-05-19 08:26:20
阅读次数:
4936
现在遇到的问题:
1.任务不用预加载,进入一个任务,加载一个任务。没有任务时,定时器怎么处理?当只有一个任务时,怎么处理?多个任务怎么轮转或按优先级切换?
2.关于各任务定时时间,一个一个地减是否麻烦,有没有更好的方法?
3.没有保护寄存,这样切换,是否对?当任务函数有多个层嵌套时,有没有问题?
#include "STC12C5A.H"
#define TIMER_RELOAD(...
分类:
其他好文 时间:
2014-05-18 10:31:55
阅读次数:
284
在51单片机中,不能直接修改PC,但有一种方法是可以改变PC的。函数调用里会把PC值压入堆栈中,调用结束后,会把PC值弹出到PC中。...
分类:
其他好文 时间:
2014-05-18 09:19:59
阅读次数:
221