AVR STK500下载线电路制作
要说明一下的是:我用的是11.0592MHz的晶振,要改成其他频率的晶振要在Config.H文件中更改F_CPU 为你用的频率。
电路图这个就可以用,我把LED换了个位置,按原图也可以的,只是我传的代码要修改一下!
M8的熔丝位设置为外部晶体即可!另最好是用11.0592MHz或7.3728MHz的晶振,以保证串行通讯无误码!
很好做的,基本上不用调试,直接烧进去以后就可以用了!
补充说明一下,图中IC5到DB9的连线好像不需要交换,IC5用的是MAX232,DB9的2脚接IC5的14脚,3脚接13脚
以下是我做的东东的图片,用手机照的,不太清楚!
关键字:AVR串口 STK500电路
引用地址:
AVR串口STK500电路制作
推荐阅读最新更新时间:2024-03-16 12:47
AVR单片机atmega16串口中断接收和发送程序
// Target : M16 // Crystal: 8.0000Mhz // AVR单片机 atmega16串口中断接收和发送程序。接收到字符后再发送出去 #include iom16v.h #include macros.h unsigned char com_in_buf ; void port_init(void) { PORTA = 0xFF; DDRA = 0xFF; PORTB = 0x00; DDRB = 0x00; PORTC = 0x00; DDRC = 0x00; PORTD = 0x00; DDRD = 0x00; } //UART0 initialize // desired ba
[单片机]
AVR片内两个串口互相通信的单片机源码
学习单片机串口程序时,我们经常会写一个串口自发自收程序,来测试硬件以及我们编写的程序; 自发自收很简单,只需要将串口的RXD与TXD两个IO短接就行; 而我们的XMEGA片上的串口非常丰富; 我将串口C0的TXD与串口E0的RXD用杜邦线链接起来,如果E0正确收到了C0发来的数据,便在虚拟串口输出相关信息虽然串口通信是一个简单而古老的通信协议,而且串口与PC直接通信越来越多地被USB代替, 但是,大量的应用仍然直接或间接地通过串口通信来完成,因此它的重要性是不言而喻的 相关图片与代码如下 ------
[单片机]
AVR串口(USART)基本操作函数
#include iom16v.h #include macros.h #include USAT.h //函数名;USAT_inti //输入:无 //输出:无 //描述:初始化USART,设置波特率 void USAT_inti(void) { UCSRA=0X00; UCSRC=BIT(URSEL)|BIT(UCSZ1)|BIT(UCSZ0); UBRRH=BAUD_H; UBRRL=BAUD_L; } //函数名;Send_Byte //输入:待发送的一字节数据 //输出:无 //描述:发送一字节 void Send_Byte(uchar data) { while(!(
[单片机]
一个基于AVR单片机的串口通讯例程
此程序是应用了ATMega128芯片,是以查询方式发送,中断方式接受数据,有问题可以交流!希望对大家有帮助! //ICC-AVR application builder : 2007-6-10 // Target : M128 // Crystal: 7.3728Mhz //作者:Caterpillar #include iom128v.h #include macros.h //UART0 initialize // desired baud rate: 9600 // actual: baud rate:9600 (0.0%) // char size: 8 bit // parity: Disabled //******
[单片机]
avr单片机USART串口通讯初始化配置及说明
avr atmega16 单片机通用同步和异步串行接收器和转发器 (USART) 是一个高度灵活的串行通讯设备,其工作模式及其初始化,寄存器说明如下。 //*****************************USART 控制和状态寄存器A(UCSRA)******************************** /*USART 控制和状态寄存器A(UCSRA) bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 RXC TXC UDRE FE DOR PE U2X MPCM RXC: USART 接收结束
[单片机]
AVR单片机中断模式的串口发送与接收
#include avr/interrupt.h #include util/delay.h int k=0,i=0,j=0; char s ; void usart0_init() { UCSR0A=0X00; UCSR0B = 0x00; UCSR0C=0X00; UCSR0C=(1 UCSZ01)|(1 UCSZ00);//八位数据位 无校验位 UBRR0L=51;//波特率 8MHZ下9600 UBRR0H=0; UCSR0B=(1 TXCIE0)|(1 RXCIE0)|(1 RXEN0)|(1 TXEN0);//接受发送及其中断使能 } /* *程序的作用是将电脑端发送过来
[单片机]