/****************************************************************************************
硬件信息
****************************************************************************************/
一个良好的硬件开发平台,除了仿真器、编程器外,不可缺少的就是“主板”!您是否纳闷于您经常使用的MCU缺乏一个良好的“主板”呢?"SMK1632"为"Smart Develop kit of 16/32"的缩写,是专为ATmega16 / ATmega32 / ATmega8535设计的硬件开发平台,它可作为ATMEGA16开发板使用。
该ATMEGA16开发板,最适合经常做试验的学生及应用开发者,特别是单片机发烧友。
· 它的设计主旨:拥有完全的IO开放性(除了PD3按键外,按键不按不影响IO状态)。所有设备均不与MCU(ATmega16 / ATMEGA32 / ATMEGA8535)的IO直接相连,但可通短接跳线帽实现连接。
· 适合初学者使用:可以使用跳线帽连接板上的资源,进行我们给出的实验测试,从而减少连线麻烦或者由连接引起的错误,使得您可以快速上手。
· 适合开发者使用:跳开跳线帽则IO是开放的,不受设备影响相关的IO状态,开放性的设计及明了的引脚标识使得您可以发挥目标MCU(ATmega16 / ATMEGA32 / ATMEGA8535)自身所拥有的所有资源,并轻松debug您的测试程序。
好了,下面让我们来看看它的裸照:

侧面抓拍的写真(点击图片可放大,我要看!
)
很正面的裸照 (点击图片可放大,芝麻开门!
)

功能介绍(点击图片可放大,不需要放大镜!
)

(点击图片可放大,好啊,看下是不是真的很大!
)
使用3根控制线,4根数据线驱动LCD1602进行显示实验,AD通道实验,PCF8563的I2C实验。
在SMK1632上的演示程序:界面显示:AD0: ,AD1: ,timer: 。。。

(点击图片可放大,给我打开呀!!!)
使用3根控制线,4根数据线驱动LCD1602进行显示实验,从PS/2接口读取PC键盘输入的数据,
唤醒休眠的MCU,将数据发向PC机,在PC端进行数据显示。

(点击图片可放大,爽!YE!
)
利用ATMEGA16开发板上的资源进行LCD12864_ST7920显示(使用2根数据线驱动LCD12864的方法),
AD通道实验,PCF8563的I2C实验,读取外部键盘数据。
LCD12864_ST7920在SMK1632上的演示程序:界面显示:WaveShare,AD0: ,AD1: ,Time:。。。
系统配送的各种彩线非常方便您做实验连接,如上图,VCC采用红线,GND采用黑线。
说到LCD显示啊,那它的用途可就广泛了,刚介绍的LCD可显示中文,带串行接口,你可以用它来设计产品或做成礼品,例如:
案例1:毕业设计上,在LCD上写 “本LCD招租,联系电话。。",惹老师发笑,可得最佳创意奖!
案例2:在公司上班,在LCD上写 “经常通宵,做程序员就好像做鸭~”,自嘲自娱,放松放松!
案例3:呆学校实验室,在LCD上写 “曾经有一段恋情摆在我的面前,可惜~" ! 弄上周星驰的经典名句,制作 “单片鸭搞笑开发板”!
案例4:情人节到来时,不忘送上自己的祝福,在LCD上写 “情人节,祝你好聚好散!" ,送给喜欢的女孩子(已有男友),暗示到底 !
案例5:当程序员导师,教导学生编程,在LCD上写:"三天捕鱼,两天晒网。设小强从1月1号起开始捕鱼,试编程求他今天到底是在捕鱼还是在晒网?" 滚屏显示!非常的酷!
好了,分析上面案例,只是让你笑笑,坐在电脑很累的,下面还是继续正题。

(点击图片可放大,超级AVR单片鸭开发板!
)
该ATMEGA16开发板的IO开放性、规则的引出所有IO、对目标MCU进行明了的引脚标识、
丰富灵活的扩展接口、电源接口等,都非常的方便您做实验!

(点击图片可放大,我点!我喜欢!
)
ISP接口外接编程器,实现在线编程。
/****************************************************************************************
编程接口、仿真接口
****************************************************************************************/

ISP接口(ATMEL官方ISP_10PIN标准接口) JTAG接口(ATMEL官方JTAG标准接口)
接口图片打“× ”的表示仿真器接口该引脚无对外输出(目标板该引脚可接可不接)
从上面的接口图可以看出:
ISP 接口:兼容ATMEL官方 ISP_10PIN 接口;
JTAG 接口:兼容ATMEL官方 JTAG 接口。
兼容,但作了以下改进,它与ATMEL官方标准的区别在于:
(1)不输出 ISP 的 PIN4 “GND” ,它对应 JTAG 的 PIN4 为“ VCC ”;
(2)不输出 JTAG 的 PIN2 “GND” ,它对应 ISP 的 PIN2 为“ VCC ”。
改进后,带来以下优点:ISP错插入MCU的JTAG接口,或JTAG错插入MCU的ISP接口,都不会导致烧器件。需要仿真器也对它们作相同的处理。(我们的仿真器的做了该处理,错误接入不再轻易的烧毁器件!)
/****************************************************************************************
软件信息
****************************************************************************************/
资料光盘内附有WaveShare所有开发板的示例程序、PROTEL实验图、AVR使用教程、开发资料等。
下面是提供的一些示例程序简介:
/*** 提供库程序列表 ***/
(点击图片可放大!)
一些实用的酷函数!
做系统开发是需要将软件程序模块化的,这样才可以提高开发效率,方便移植,升级维护等!
例如:开发I2C接口的PCF8563(实时时钟),调用的结构图为:
main.C
|
|
PCF8563.H
|
|
I2C.H
|
|
CmmICC.H
| |
| |
Hardware.H Software.H
再如:开发I2C接口的PCF8591(高性能AD/DA),调用的结构图为:
main.C
|
|
PCF8591.H
|
|
I2C.H
|
|
CmmICC.H
| |
| |
Hardware.H Software.H
通过对比,PCF8563及PCF8591的实验程序,底层是完全相同的,这就是结构化的设计。。。
写好接口程序模块后,程序开发就变的简单,主程序里仅为少量控制代码即可实现需要的功能。
/*** 提供C程序列表 ***/

(点击图片可放大!)
提供的“内核及主板试验”,用于开发ATMEGA16的所有内核功能,有C程序代码、接口及程序说明!

(点击图片可放大!)
提供的“外围模块试验”,用于开发常用的外围模块,有C程序代码、接口及程序说明!