键盘显示芯片CH451与MEGA32的接口设计

网友投稿 246 2022-11-02

键盘显示芯片CH451与MEGA32的接口设计

1 键盘显示方案比较

1.1 经典方案:使用8279芯片

1.2 自由方案:使用辅助单片机

1.3 新方案:使用CH451芯片

CH451的特点是:

b) 用硬件实现,串行接口、显示驱动、键盘扫描、μP监控之间相互独立不受干扰,串行接口的位时钟能够支持到10 MHz,数据传输速度比辅助单片机方案提高40倍,即使主控单片机频繁操作也完全不会影响显示驱动和键盘扫描以及μP监控。

c) 串行接口以硬件实现,不需要时钟;而显示驱动和键盘扫描使用约0.75 MHz的全内置主时钟多次分频后的扫描时钟,所以在工业现场不易受到干扰。即使受到强干扰,也能够在干扰后立即正常工作,不会影响串行接口、显示驱动和键盘扫描的后续操作。

现在与CH451类似的还有北京凌志比高科技的BC7281、hd7279a等,这些都是相当不错的显示和键盘接口芯片。

2 硬件设计

3 软件设计

AVR的集成开发环境种类比较多,如ICCAVR、WINAVR、BASCOM-AVR、IAR、CodeVisionAVR等,因此造成程序之间难以完全兼容,这也是目前开发的一个缺点。这里选择ICCAVR作为开发环境,应用C语言来实现程序。因为ICCAVR在我国有广泛的使用者,用C语言进行软件开发可以很好地实现代码的可读性和移植性,大幅度加快开发进度。

CH451具有硬件实现的高速4线串行接口,包括4个信号线:串行数据输入线DIN、串行数据时钟线DCLK、串行数据加载线LOAD、串行数据输出线DOUT。启用键盘扫描功能时序图如图3示。

这4根信号线虽然与SPI总线方式类似,但是不能用AMEG32自带的SPI接口来对CH451进行控制,因为这不符合时序要求。

软件设计包括CH451的初始化、显示和读按键3部分。初始化包括对CH451的设置,如开显示、键盘功能、设置BCD译码方式等。显示部分对6个数码管分时轮流显示,通过加载字数据命令来显示每个数码管的数字。读按键则是加载CH451的读取按键代码命令。单片机可以通过查询或者外部中断方式来读取。

6个数码管显示和读取8个按键信息主要用到的函数如下:

显示24个发光二极管用到的函数如下:

4 结束语

本文详细介绍了CH451与AMEG32的接口方案,并给出了具体的程序设计,现场实际运行稳定可靠。运用这些集成的键盘显示驱动芯片可以大大简化外围器件,节省单片机I/O口,提高系统的可靠性。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Git 撤消操作
下一篇:加密项目必修科目:代币经济学
相关文章

 发表评论

暂时没有评论,来抢沙发吧~