本程序主要实验目的:
1.时钟节拍中断
主要体验Cortex-M3的SysTick及其中断.
2."零耗时键盘"的基本建立
KEY1~KEY4. 只建立了放键,短压和长压3个事件。
可像钢琴一样乱弹看LED3~LED6的变化及"并行任务"的实现,
长压键蜂鸣器发声直到放键为止。
这里只涉及了最基本的应用,回调钩子等技术未在本例中使用.
所以它还不能称之为"基于零耗时键盘的OS",不过有人明白如何实现~~~
3.复位键做"键盘"
不断电每按一次复位键LED1~LED2将交替亮灭。
4.再现C++类成员函数指针及在键盘命令表上的典型应用.
有人应该明白为什么键盘不用外部中断,为什么键盘要"扫而不描"的道理。
菜农 HotPower@126.com 2008.1.25 2:48 于雁塔村菜地
LM菜鸟"驳中断不能喂狗"的"经典谬论"之C++演示程序
本例程主要在"零耗时键盘"裸奔程序的基础上新增加4个内容
1.增加了串口收发例程。(未按菜农之思路)
2.增加了休眠WAKE键唤醒功能.
注意相关的跳线. 先按Key1再长压Key4-->自毁~~~必须按WAKE键唤醒。
3.可先按Key2再Key1交替禁止或允许喂狗切换。
注意不喂狗时,喂狗超时将使系统复位,LED1~LED2将交替亮灭
4.可先按Key3再Key4切换中断喂狗或主循环喂狗方式.
本例默认中断喂狗方式,当先按Key3再Key4切换到主循环喂狗时。
为论证故意关掉了总中断!!!蜂鸣器长叫~~~
主程序中的主循环"正常工作",由于只能在中断中关闭蜂鸣器。
所以唯一的办法就是按复位键~~~按晚复位键耳朵吵坏了别怪俺~~~
菜农 HotPower@126.com 2008.1.26 4:18 于雁塔村菜地
签名:
1634090993_696409884 2014-4-23 11:56
雁塔菜农 2008-2-22 18:03
最近不太喜欢Keil,所以没做Keil的例程~~~
IAR和Keil基本是一样的.
用户75364 2008-2-12 22:14
呵呵!!
中断现场如何恢复啊,老大???
用户1270731 2008-1-29 08:55