ATmega48单片机为RISC结构,在1MHz频率下速度为1MIPS。系统时钟有外部低频、外部高频、内部RC振荡器时钟等多种工作方式可以选择。选择方法是通过编写熔丝位,并结合软件编程与时钟相关的寄存器实现。选择单片机的时钟频率越高,单片机的功耗也越大。本系统选用128kHz的内部RC振荡器,在工作电压为3V时,静态电流小于60μA。休眠状态时静态电流更低。ATmega48单片机内有六种省电休眠模式,可以使仪器在非工作期间进入休眠状态。ATmega48的系统时钟还可以通过编程分频进一步地降低时钟频率,减小功耗,在仪器休眠期,采用32倍的分频系数将时钟降低到4kHz。
ATmega48单片机内有两个8位的定时/计数器,一个16位的定时/计数器,可以满足本系统对开启时间、脉宽、脉冲频率的精确控制。另外单片机还有6个PWM输出口,可以用于调节仪器的刺激强度。ATmega48单片机内部有独立的硬件看门狗时钟,可以有效地防止单片机死机。
本系统选用的ATmega48V是ATmega48的低电压工作的芯片,选用ATmega48V作为电刺激器的主控芯片,几乎不需要另加其他的元件。ATmega48V大功率电感贴片电感器可以在1.8V~5.5V范围的电压下工作,在电池使用的有效电压范围内,单片机均可正常工作,能充分利用电池的容量。
3.2 脉冲发生电路
通常具有一定驱动功率的脉冲输出电路首先产生脉冲波形,再将脉冲波形用集成的功率放大器作驱动放大,放大电路工作在线性放大区。这种放大电路必须具有静态电流来维持合适的静态工作点,功耗较大。为了降低耗电流,本系统的电刺激器用开关方式生成刺激脉冲。单片机及其脉冲发生器电路原理如图3所示。J1是刺激电极的接线端子,OC0A是ATmega48V定时器0的PWM输出口,根据实验的要求调节输出强度。用PWM输出以及R6、R7、C6和C7组成的滤波器调节U3A正相的输入电压。运放U3A接为正相放大方式,放大倍数由R8和R9决定。Q2为功率放大三极管,增大输出的驱动能力。Q3工作在开关状态,用于控制输出脉冲的宽度和频率,当ATmega48V的9脚是高电平时,Q3导通,输出刺激脉冲;导通500μs后,ATmega48V的9脚变到低电平,Q3关闭,脉冲结束;按10Hz的频率循环往复。
4 功能实现及软件编程
ATmega48有131条指令,大多是单机器周期指令,指令系统非常丰富。ATmega48在指令设计时很好地考虑到C语言的操作模式,用C语言编程可以得到很高的代码效率。ATmega48属于AVR系列的单片机,常用的用于AVR单片机开发的C语言有两种:AVR-ICC和AVR-GCC。AVR-ICC是商业的AVR的C语言集成化开发工具(IDE),界面友好,使用简单,有生产和代理商很好的技术支持。而AVR-GCC是依靠网络流行的公开源代码的自由软件,可以从网上(http://www.avrfreaks.net)免费下载编译软件和各种工具软件。由于AVR-GCC有大量的电感器l高手参与开发和众多网上参与者的测试,其软件的更新速度和代码效率以及软件缺陷率的排除都非常共模电感器出色。但是AVR-GCC是由UNIX平台上移植过来的,保留了类似UNIX的操作方式,对于不熟悉U一体电感器NIX的WINDOWS用户,其使用时入门很困难,只有熟练使用后才能感到其功能的强大。在http://www.avrfreaks.net网上有关于AVR-GCC的论坛,使用中的许多问题都可以在论坛上得到帮助。由于AVR-GCC具有低廉的使用成本和出色的功能,所以本系统选用AVR-GCC作为编程工具。
电刺激器在工作的间歇期进入休眠状态。ATmega48有6种休眠方式,每一种方式休眠的部件不相同,休眠后单片机的功耗也不同。由于电刺激器在休眠时要求定时重新唤醒进行工作,必须保留一个定时器的工作。因此选用的休眠方式为IDLE,在IDLE方式下定时器2仍然可以工作。以下是休眠部分的程序。
set_sleep_mode(SLEEP_MODE_IDLE); //设置休眠方式为IDLE
SMCR |= _BV(SE); //允许休眠
_asm_ _volatile_ ('sleep' 'nt' :: ); //进入休眠
SMCR &= ~_BV(SE); //从休眠中唤醒,进入工作状态,不允许休眠
定时器2用于对休眠期的时间间隔计时。t2_init_idle(void) 是进入休眠状态前初始定时器2的程序,SIGNAL(SIG_OVERFLOW2)是休眠状态下定时器2的中断服务程序。每1分钟定时器2将会产生溢出中断,唤醒单片机。
印刷文件鉴定标准制定中需要考虑的几个问题印刷设备多功能化带来的问题随着科学技术的进步,办公印刷设备已从单一 功能设备发展到同时具有复印、打印、传真等多种功 能的~体化设备。由此对传统的将设备称为打印机、复印
以微控制器为中心的可配置平台是否主导FPGA使用 众所周知,FPGA是通过逻辑组合来实现各种功能的器件,几乎可以进行任何类型的处理。过去五年间,为了突破传统的通信及网络等高端应用市场局限,将FPGA引入更为广阔的嵌入式领域,FPGA厂商已经开始尝试
网络印刷客户端色彩管理方法的研究随着网络在印刷行业的应用,印刷活件和印刷经营模式的变化对印刷过程色彩管理提出了新的要求。常见印刷过程中从印前到印刷的色彩管理是一个相对封闭的过程。输入、显示及印刷