AVR代码生成器 支持ICC GCC代码生产
AVR代码生成器 支持ICC GCC代码生产点击此处下载 ourdev_530679.rar(文件大小:194K) (原文件名:AVR代码生成器.rar) 谢谢,下一个。 友情帮顶,最好把界面抓个图出来 //包含所需头文件
#include <ioM16v.h>
#include <macros.h>
/*------宏定义------*/
#define uchar unsigned char
#define uint unsigned int
//端口初始化
void port_init(void)
{
PORTA = 0x00;
DDRA= 0x00;
PORTB = 0xFF;
DDRB= 0xFF;
PORTC = 0x00;
DDRC= 0x00;
PORTD = 0x00;
DDRD= 0x00;
}
void adc_init(void)
{
//adc转换初始化
ADCSRA = 0x00; //禁止AD转换
ADMUX = 0x40;
SFIOR |= 0x00;
ACSR = 0x80; //禁止模拟比较器
ADCSRA = 0x01;
}
unsigned int adc_calc(void)
{
//计算实际电压
unsigned long value=0;
unsigned int voltage=0; //电压单位为(mV)
value=ADCL; //首先读低位
value|=(int)ADCH << 8; //然后读高位
voltage=(value*5000)>>10;
return voltage;
}
//串口通信初始化
void usart_init(void)
{
UCSRB = 0x00;//禁止中断
UCSRA = 0x00;
UCSRC = BIT(URSEL) | 0x26;
UBRRL = 0x19;
UBRRH = 0x00;
UCSRB = 0xF8;
}
//串行接收结束中断服务程序
#pragma interrupt_handler usart_rx_isr:12
void usart_rx_isr(void)
{
}
//数据寄存器为空中断服务程序
#pragma interrupt_handler usart_udre_isr:13
void usart_udre_isr(void)
{
}
//串行发送结束中断服务程序
#pragma interrupt_handler usart_tx_isr:14
void usart_tx_isr(void)
{
}
void init_devices(void)
{
CLI(); //禁止所有中断
MCUCR= 0x00;
MCUCSR = 0x80;//禁止JTAG
GICR = 0x00;
port_init();
adc_init();
usart_init();
SEI();//开全局中断
}
//主函数
void main(void)
{
init_devices();
//在这继续添加你的代码
while(1)
{
NOP();
}
}
http://cache.amobbs.com/bbs_upload782111/files_25/ourdev_530739.jpg
(原文件名:avr生成器main.jpg)
http://cache.amobbs.com/bbs_upload782111/files_25/ourdev_530740.jpg
(原文件名:avr生成器Port.jpg)
http://cache.amobbs.com/bbs_upload782111/files_25/ourdev_530741.jpg
(原文件名:avr生成器ADC.jpg)
http://cache.amobbs.com/bbs_upload782111/files_25/ourdev_530742.jpg
(原文件名:avr生成器串口.jpg) 这还是那个老版本吧 说句实在的,这软件咸丰年时已有了。 古董软件,顶一个 少了PWM 是给懒人做的玩意,没多大用处,误人误事。 支持的片子太少,再支持XMEG就好了 顶起来 灰常感谢,我正需要这个呢 呵呵 好像没多大用处还是谢谢分享
页:
[1]