当前位置:首页 > atmega8
  • atmega8 例程:系统库函数的延迟

    /************************************************************ 函数库说明:ATMEGE8 延迟库函数* 版本: v1.0 * *************************************************************注意: LED PC5 ***********************************************************/ #include //定义外部晶振 #define F_CPU 6000000UL //延迟包含头文件 #include //函数声明 void Delay_s(int ss); int main(void) { //LED等PC5设置为输出 DDRC |= (1

    时间:2019-01-07 关键词: atmega8 延迟 系统库函数

  • atmega8 例程:FLASH版5110

    今天试试把数组存到flash里,再读出来,就在原先5110的工程上进行修改,能看出来我改在哪里了吗?uint8Chinese_Font[][25]PROGMEM={/*--文字:芜--*//*--楷体9;此字体下对应的点阵为:宽x高=12x12--*//*--高度不是8的倍数,现调整为:宽度x高度=12x16--*/{0x00,0x48,0x48,0xDE,0xFE,0xF4,0xFE,0x76,0x24,0x04,0x04,0x00,0x00,0x02,0x03,0x03,0x01,0x03,0x03,0x02,0x02,0x02,0x03,0x00},//省略其它定义需要修改的两个文件:/*************************************************************名称:voidLCD_Write_Char(uint8c)**功能:写一个字符**入口参数:c要写入的字符**出口参数:无**使用说明:无**********************************************************/voidLCD_Write_Char(uint8c){uint8line=0;c-=32;for(line=0;line

    时间:2019-01-03 关键词: atmega8 5110 flash版

  • atmega8 例程:AD中断方式采集

    /************************************************************ 函数库说明:ATMEGE8 AD模数转换 * 版本: v1.0 * * 说明: 中断方式AD采集* * 版本更新: 详见readme.txt * *************************************************************注意: res PC5 * CE PB0* RST PB1* DC PB2* SDIN PB3* SCLK PB4 ***********************************************************/ #include "includes.h" /************************************************************* 名 称:void AD_Init(void)** 功 能:AD初始化** 入口参数:无** 出口参数:无** 使用说明:无**********************************************************/ void AD_Init(void) { //参考电压AREF,左对齐,ADC5单端输入 ADMUX |= (1

    时间:2018-12-24 关键词: 采集 atmega8 ad中断方式

  • atmega8 例程:USART串口通信

    /****************************************************************** 函数库说明:ATMEGA8 串口通信* 版本: v1.0 * 说明: 查询发送、中断接收 * *******************************************************************注意: RXD PD0* TXD PD1******************************************************************/ #include #include interrupt.h> //晶振频率 #define F_CPU 6000000UL //波特率 #define BAUD 9600 /******************************************************************* 名称:void Init_Usart(void)** 功能:atmega8 串口初始化** 入口参数:无** 出口参数:无** 使用说明:查询发送,中断接收,8位数据位,1位停止位,9600波特率*****************************************************************/ void Init_Usart(void) { //设置波特率 UBRRH = (F_CPU / BAUD / 16 - 1) / 256; UBRRL = (F_CPU / BAUD / 16 - 1) % 256; //接收中断使能,接收使能,发送使能 UCSRB |= (1

    时间:2018-12-12 关键词: 串口通信 atmega8 usart

  • atmega8 例程:PWM

    /************************************************************ 函数库说明:ATMEGE8 PWM* 版本: v1.0 * *************************************************************注意: PB1 PB2 20khz 50% 占空比方波***********************************************************/ #include int main(void) { //PB1 PB2 设置为输出模式 DDRB |= (1

    时间:2018-11-20 关键词: pwm atmega8

  • atmega8 默认内部RC振荡 + 解锁

    今天偶然的机会,因为定时器老是不对劲,而把晶振给拔了突然发现对程序的运行没有任何影响,这次我才想起来atmege8是不是有内部晶振哦。一查果然。。。。。。修改的方法是改熔丝位 时钟源 启动延时 熔丝 外部时钟 6 CK + 0 ms CKSEL=0000 SUT="00" 外部时钟 6 CK + 4.1 ms CKSEL=0000 SUT="01" 外部时钟 6 CK + 65 ms CKSEL="0000" SUT="10"内部RC振荡1MHZ 6 CK + 0 ms CKSEL="0001" SUT="00"内部RC振荡1MHZ 6 CK + 4.1 ms CKSEL="0001" SUT="01"内部RC振荡1MHZ1 6 CK + 65 ms CKSEL="0001" SUT="10"内部RC振荡2MHZ 6 CK + 0 ms CKSEL="0010" SUT="00"内部RC振荡2MHZ 6 CK + 4.1 ms CKSEL="0010" SUT="01"内部RC振荡2MHZ 6 CK + 65 ms CKSEL="0010" SUT="10"内部RC振荡4MHZ 6 CK + 0 ms CKSEL="0011" SUT="00"内部RC振荡4MHZ 6 CK + 4.1 ms CKSEL="0011" SUT="01"内部RC振荡4MHZ 6 CK + 65 ms CKSEL="0011" SUT="10"内部RC振荡8MHZ 6 CK + 0 ms CKSEL="0100" SUT="00"内部RC振荡8MHZ 6 CK + 4.1 ms CKSEL="0100" SUT="01"内部RC振荡8MHZ 6 CK + 65 ms CKSEL=0100 SUT="10"外部RC振荡≤0.9MHZ 18 CK + 0 ms CKSEL="0101" SUT="00"外部RC振荡≤0.9MHZ 18 CK + 4.1 ms CKSEL="0101" SUT="01"外部RC振荡≤0.9MHZ 18 CK + 65 ms CKSEL="0101" SUT="10"外部RC振荡≤0.9MHZ 6 CK + 4.1 ms CKSEL="0101" SUT="11"外部RC振荡0.9-3.0MHZ 18 CK + 0 ms CKSEL="0110" SUT="00"外部RC振荡0.9-3.0MHZ 18 CK + 4.1 ms CKSEL="0110" SUT="01"外部RC振荡0.9-3.0MHZ 18 CK + 65 ms CKSEL="0110" SUT="10"外部RC振荡0.9-3.0MHZ 6 CK + 4.1 ms CKSEL=0110 SUT="11"外部RC振荡3.0-8.0MHZ 18 CK + 0 ms CKSEL=0111 SUT="00"外部RC振荡3.0-8.0MHZ 18 CK + 4.1 ms CKSEL="0111" SUT="01"外部RC振荡3.0-8.0MHZ 18 CK + 65 ms CKSEL=0111 SUT="10"外部RC振荡3.0-8.0MHZ 6 CK + 4.1 ms CKSEL="0111" SUT="11"外部RC振荡8.0-12.0MHZ 18 CK + 0 ms CKSEL=1000 SUT="00"外部RC振荡8.0-12.0MHZ 18 CK + 4.1 ms CKSEL="1000" SUT="01"外部RC振荡8.0-12.0MHZ 18 CK + 65 ms CKSEL="1000" SUT="10"外部RC振荡8.0-12.0MHZ 6 CK + 4.1 ms CKSEL="1000" SUT="11" 低频晶振(32.768KHZ) 1K CK + 4.1 ms CKSEL="1001" SUT="00" 低频晶振(32.768KHZ) 1K CK + 65 ms CKSEL="1001" SUT="01" 低频晶振(32.768KHZ) 32K CK + 65 ms CKSEL="1001" SUT="10"低频石英/陶瓷振荡器(0.4-0.9MHZ) 258 CK + 4.1 ms CKSEL="1010" SUT="00"低频石英/陶瓷振荡器(0.4-0.9MHZ) 258 CK + 65 ms CKSEL="1010" SUT="01"低频石英/陶瓷振荡器(0.4-0.9MHZ) 1K CK + 0 ms CKSEL=1010 SUT="10"低频石英/陶瓷振荡器(0.4-0.9MHZ) 1K CK + 4.1 ms CKSEL="1010" SUT="11"低频石英/陶瓷振荡器(0.4-0.9MHZ) 1K CK + 65 ms CKSEL="1011" SUT="00"低频石英/陶瓷振荡器(0.4-0.9MHZ) 16K CK + 0 ms CKSEL=1011 SUT="01"低频石英/陶瓷振荡器(0.4-0.9MHZ) 16K CK + 4.1ms CKSEL="1011" SUT="10"低频石英/陶瓷振荡器(0.4-0.9MHZ) 16K CK + 65ms CKSEL="1011" SUT="11"中频石英/陶瓷振荡器(0.9-3.0MHZ) 258 CK + 4.1 ms CKSEL="1100" SUT="00"中频石英/陶瓷振荡器(0.9-3.0MHZ) 258 CK + 65 ms CKSEL="1100" SUT="01"中频石英/陶瓷振荡器(0.9-3.0MHZ) 1K CK + 0 ms CKSEL=1100 SUT="10"中频石英/陶瓷振荡器(0.9-3.0MHZ) 1K CK + 4.1 ms CKSEL="1100" SUT="11"中频石英/陶瓷振荡器(0.9-3.0MHZ) 1K CK + 65 ms CKSEL="1101" SUT="00"中频石英/陶瓷振荡器(0.9-3.0MHZ) 16K CK + 0 ms CKSEL="1101" SUT="01"中频石英/陶瓷振荡器(0.9-3.0MHZ) 16K CK + 4.1ms CKSEL="1101" SUT="10"中频石英/陶瓷振荡器(0.9-3.0MHZ) 16K CK + 65ms CKSEL="1101" SUT="11"高频石英/陶瓷振荡器(3.0-8.0MHZ) 258 CK + 4.1 ms CKSEL="111"0 SUT="00"高频石英/陶瓷振荡器(3.0-8.0MHZ) 258 CK + 65 ms CKSEL="111"0 SUT="01"高频石英/陶瓷振荡器(3.0-8.0MHZ) 1K CK + 0 ms CKSEL="111"0 SUT="10"高频石英/陶瓷振荡器(3.0-8.0MHZ) 1K CK + 4.1 ms CKSEL="111"0 SUT="11"高频石英/陶瓷振荡器(3.0-8.0MHZ) 1K CK + 65 ms CKSEL=1111 SUT="00"高频石英/陶瓷振荡器(3.0-8.0MHZ) 16K CK + 0 ms CKSEL="111"1 SUT="01"高频石英/陶瓷振荡器(3.0-8.0MHZ) 16K CK +