|||
POTATO是以Freescale公司的MC9S08AC16单片机为核心设计的一款开发板。可以配合本站提供的HCS08 OpenSource BDM仿真器来学习AC16强大的功能,并完成一些有趣的实验。 开发板的外观如图,其中"NOKIA5110"液晶下面还有DS1302实时时钟芯片及电池座,用来完成实时时钟实验。下面就来简单的介绍下POTATO可以完成的实验及相应的单片机资源。本开发板所有的驱动程序均使用CodeWarrior6.2版开发完成。相关资源见本页底部或导航栏的链接。 实验1 蜂鸣器的驱动: 蜂鸣器可以用来发出“嘀嘀”声。在实际工程中通常用来实现报警、提示音、按键伴音等功能。 具有硬件电路简单、可靠、成本低廉等优点。该例程可以使蜂鸣器按一定的频率实现“嘀嘀”声,通过该实验我们可以学习AC16单片机的时钟配置、I/O端口配置及操作以及定时器配置及使用。 实验2 按键的驱动: 按键是最常用的输入元件之一,按键的驱动也是单片机应用中最基础的应用之一。本实验可以学习按键在实际工程中使用,该例程含有工程编程中基础的分层驱动和状态机思想。 实验3 数码管显示: 数码管是常用的显示元件,在实际的工程应用中用来显示一些数字类的参数,比如电压、温度之类。本例程采用实际工程中最为常见的动态驱动方式。从实验1到实验3,用户可以通过POTATO来学习熟悉AC16的时钟配置、I/O的配置和定时器的使用。这是单片机最基础的应用。 实验4 ADC模数转换: 模数转换在实际工程中会经常使用,通常用来采样电压、电流、温度、压力等参数,是控制方面应用中不可缺少的功能;顾名思义,模数转换就是把模拟量转为数字 量。最直观的应用就是测量电压。本例程用POTATO上电位器和数码管来演示,经过AC16的ADC功能获得电位器输出的电压,显示在数码管上。旋转电位 器可以看到电压的变化。本例显示的范围为:0.0V~5.0V。通过本实验,我们可以学习ADC功能。 实验5 红外接收: 一 体化红外接收头应用广泛,生活中随处可见,比如家用电器的遥控器。本例采用常见的一体化红外接收头和HT6221为核心的遥控器来完成。HT6221最多 支持32个按键,遥控器按下按键后,HT6221自动生成键值(0~31)然后以38KHz的频率调制后发射。POTATO通过板载的一体化红外接收头接 收到这个信号后送给AC16,AC16接收到信号后进行解码,将接收到的键值显示在数码管上。通过本实验我们可以学习红外解码及AC16的外部中断——IRQ的用法。 实验6 点阵型LCD显示实验: LCD 即液晶显示器,和数码管相比它的功耗低到几乎可以忽略不计,POTATO采用的LCD显示器为NOKIA5110手机上使用的点阵型液晶,用PWM(脉宽 调制)来改变LCD的背光亮度,用SPI总线来向LCD写数据,通过SPI总线,我们可以很方便的在LCD上显示汉字、ASCII字符。按键1用来控制背 光的开、关。按键2增加背光亮度,按键3降低背光亮度。通过这个实验我们会学到AC16单片机的SPI通讯接口和PWM的用法。 实验7 DS18B20测温度实验: DS18B20是美信公司生产的温度传感器,它是一款1-Wire器件,与单片机的通讯仅用一根I/O,并且输出直接为数字量,使用很方便。本例使用DS18B20测量POTATO所处的环境温度并在LCD上显示出来。通过这个例子我们可以学习1-Wire器件的使用,并对AC16的I/O进一步加深了解。 实验8 串行通讯实验: 串口通讯是工程中常用的通讯方式,本例配合网上随处可见的“串口调试助手”协助完成。用串口调试助手通过PC机向POTATO发送数据,POTATO接收数据后在LCD显示出来,同时POTATO也可以将数据发送至PC机,同样可以用串口调试助手来观察到。本例可以学习AC16的串口应用。 实验9 24C02实验: 24C02是常用的存储器,是一种IIC总线器件,24C02是可以掉电存储的,所以我们需要掉电后保存的数据可以放在里面,比如电表里的历史数据什么的。可以通过这个实验来学习24C02的应用和AC16的IIC接口。 实验10 实时时钟实验: 用美信公司的DS1302芯片我们可以完成实时时钟的实验,实时时钟应用很广,广告牌上时间、公交车上报时的LED点阵屏上都有它的存在,在本例中我们可以学习DS1302的应用。 实验11 PS2键盘实验: PS2接口是PC上常见的接口,用来连接鼠标或键盘。虽然现在USB接口的键鼠大行其道,但PS2键盘一时半会还会存在,本例POTATO接收到PS2键盘的输入并显示到LCD上,在本例中我们可以学习AC16的键盘中断和了解PS2键盘的协议。 |