51与PC通信协议设计及实现(三):51部分模块化分工及设计

整个的51部分的伪代码简写如下:

 1 void sendData()
2 {}
3 void time()
4 {}
5 void keysChecked()
6 {
7 return loca;
8 return key_state;
9 }
10 main()
11 {
12 init();
13 while(1)
14 {
15 if(keysChecked = 1) //放到中断处理比较好
16 {
17 temp_time = time (now);
18 temp_location = key_loca;
19 temp_state = key_state;
20 SBUF = temp_time | temp_location | temp_state;
21 }
22 }
23 }
24 void init();

由此段粗糙的伪代码可以得出应该设计出如下几个模块:初始化、发送数据、矩阵键盘检测、时间模块以及一些的中断处理程序,以上的伪代码只做大致的框架参考之用。

下面开始各个部分的设计:

一,设计一个按键后产生中断的程序

及按键后产生中断,然后将此时的按键位置+按键状态+按键的时间等信息发送给上位机

二,设计一个计时模块

进行时间统计,将按键时的时间进行精确的定时,

posted @ 2012-06-04 15:17  SimArchitect  阅读(227)  评论(0)    收藏  举报