1回答

0收藏

PSoCRocks程序分析

英飞凌 英飞凌 2721 人阅读 | 1 人回复 | 2012-09-07

本帖最后由 nemon 于 2012-9-7 12:48 编辑

一共4个代码文件,依赖关系如下:
main.c
+->device.h
+->Display.h(Display.c)

device就不说了。
先说Display:
Display负责显示字符转换和led延时,里面定义了
extern uint8  DisplayRasterTable[];
用来引用main.c里面定义的全局DisplayRasterTable,这个数组是用来保存显示字符的各列像素的。
const char8 font8x5[ 0x60 ][ 5 ]是字符转列像素的转换表。
看原文就明白了:
  1. /***************************************************************
  2. This array contains ASCII character offset for LED display*/
  3. /***************************************************************
  4. The characters are displayed using a pixel format.
  5. Each character is represented by 5 horizontal pixels and 8 vertical.
  6. Each column is a single byte.

  7. For example A is displayed in the following format

  8.              0 0 1 0 0  =      *
  9.              0 1 0 1 0  =    *   *
  10.              1 0 0 0 1  =  *       *
  11.              1 0 0 0 1  =  *       *
  12.              1 1 1 1 1  =  * * * * *
  13.              1 0 0 0 1  =  *       *
  14.              1 0 0 0 1  =  *       *
  15.              1 0 0 0 1  =  *       *
  16.              | | | | |
  17.              | | | | 0x3F
  18.              | | | 0x48
  19.              | | 0x88
  20.              | 0x48
  21.              0x3F

  22.              {0x3F,0x48,0x88,0x48,0x3F},     // ASCII -  65 A
  23. ****************************************************************/
复制代码
算有图了有真相了吧。
uint8 LED_StringProcess(const char8 CurrentDisplayString[])负责把CurrentDisplayString转换成列像素,放在DisplayRasterTable里(每个字符后面加一列空白);
void LED_Delay(uint16 DelayCount)延时;

下面是主角main.c:
const char8 DisplayString[MAX_MESSAGE_NUMBER][STRING_MAX_LEN] 预定义的MAX_MESSAGE_NUMBER个显示字串;
const uint8 StringCycles[MAX_MESSAGE_NUMBER]每次显示第n个字串时连续显示的次数(有点显示时间的意思哈);
只有一个函数:
void main()
流程是:对每一个要显示的字串做以下操作:
等开始晃,则逐一显示每一列,每一列都显示完了后,停下来直到晃动停止。
结构很清楚,现在还有个问题:“ACCEL_TRIGGER是干什么用的?”



分享到:
回复

使用道具 举报

回答|共 1 个

倒序浏览

沙发

nemon

发表于 2012-9-11 13:04:31 | 只看该作者

本帖最后由 nemon 于 2012-9-11 13:06 编辑

补充一下官方文件中的流程图:
您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条