Chào các bác em moi tìm hiểu về AVR nhờ các bác chỉ giáo cho em với a ! em muốn kích hoạt chế độ nhận cho atmega 16 qua max485 và khi nhận rồi thì xuất dữ liệu ra PORTC .nhờ các bác chỉ giáo ạ ! có thể thi cho e xin 1 doạn code đơn giản xuat dữ liệu ra cho nhấp nháy led chẳng hạn ! em dung codevision các bác nhá ! em cảm ơn ạ !
Thông báo
Collapse
No announcement yet.
Các bác giúp em về nhận dữ liệu usart cho AVR
Collapse
X
-
Nguyên văn bởi kieunamthanh Xem bài viếtChào các bác em moi tìm hiểu về AVR nhờ các bác chỉ giáo cho em với a ! em muốn kích hoạt chế độ nhận cho atmega 16 qua max485 và khi nhận rồi thì xuất dữ liệu ra PORTC .nhờ các bác chỉ giáo ạ ! có thể thi cho e xin 1 doạn code đơn giản xuat dữ liệu ra cho nhấp nháy led chẳng hạn ! em dung codevision các bác nhá ! em cảm ơn ạ !
-
Chào bạn kieunamthanh
Đây là code cho atmega8 chạy thanh anh 8MHZ nhé.
// USART Mode: Asynchronous
// USART Baud Rate: 9600
Khi nhận ký tự là a thì sẽ đảo trạng thái của cổng C.
Bạn xem code có chạy được không, thì mình hướng dẫn trên mạch thật cho bạn!
/************************************************** **
Chip type : ATmega8
Program type : Application
AVR Core Clock frequency: 12.000000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 256
************************************************** ***/
#include <mega8.h>
// USART Receiver interrupt service routine
interrupt [USART_RXC] void usart_rx_isr(void)
{
char status,data;
status=UCSRA;
data=UDR;
if(data=='a') // Nhận được ký tự là a
PORTC = ~PORTC; // đảo trạng trái trên cổng C
}
// Standard Input/Output functions
#include <stdio.h>
// Declare your global variables here
void main(void)
{
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0xFF;
PORTD=0x00;
DDRD=0x00;
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: Off
// USART Mode: Asynchronous
// USART Baud Rate: 9600
UCSRA=0x00;
UCSRB=0x90;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x4D;
// Global enable interrupts
#asm("sei")
while (1)
{
// Place your code here
}
}
Comment
-
Chào bạn kieunamthanh
Đây là code cho atmega8 chạy thanh anh 12MHZ nhé.
// USART Mode: Asynchronous
// USART Baud Rate: 9600
Khi nhận ký tự là a thì sẽ đảo trạng thái của cổng C.
Bạn xem code có chạy được không, thì mình hướng dẫn trên mạch thật cho bạn!
/************************************************** **
Chip type : ATmega8
Program type : Application
AVR Core Clock frequency: 12.000000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 256
************************************************** ***/
#include <mega8.h>
// USART Receiver interrupt service routine
interrupt [USART_RXC] void usart_rx_isr(void)
{
char status,data;
status=UCSRA;
data=UDR;
if(data=='a') // Nhận được ký tự là a
PORTC = ~PORTC; // đảo trạng trái trên cổng C
}
// Standard Input/Output functions
#include <stdio.h>
// Declare your global variables here
void main(void)
{
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0xFF;
PORTD=0x00;
DDRD=0x00;
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: Off
// USART Mode: Asynchronous
// USART Baud Rate: 9600
UCSRA=0x00;
UCSRB=0x90;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x4D;
// Global enable interrupts
#asm("sei")
while (1)
{
// Place your code here
}
}
Comment
-
cảm ơn anh thực ra la em đang đinh làm cái mạch nhập giá trị từ máy tính (ví du ta ấn số 1 trên bàn phím máy tính thì máy tinh sẽ gửi xuồng vkd avr và hiển thị ra led 7 đoạn la số 1 thông qua 1 con ghi dich ) nói thât với bác la e chua bít làm cái này chưa bit clk chốt như nào data truyen ra như thế nào để điều hiên thanh ghi dịche vẽ 1 cái mạch nhờ bác xem giúp và cho e xin đoạn code điều khiển nếu đcj e xin cảm ơn ! bác nhiu ! em k biết gửi file đính kem nên bác co thể cho em xin email dc ak ?
Comment
-
Nguyên văn bởi kieunamthanh Xem bài viếtcảm ơn anh thực ra la em đang đinh làm cái mạch nhập giá trị từ máy tính (ví du ta ấn số 1 trên bàn phím máy tính thì máy tinh sẽ gửi xuồng vkd avr và hiển thị ra led 7 đoạn la số 1 thông qua 1 con ghi dich ) nói thât với bác la e chua bít làm cái này chưa bit clk chốt như nào data truyen ra như thế nào để điều hiên thanh ghi dịche vẽ 1 cái mạch nhờ bác xem giúp và cho e xin đoạn code điều khiển nếu đcj e xin cảm ơn ! bác nhiu ! em k biết gửi file đính kem nên bác co thể cho em xin email dc ak ?
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi HTTTTHCó cái bài nhạc Hoa, bọn Tây nó hoà tấu rộn rã, nhảy nhót tụt cả...
https://youtu.be/UAaiFiU-baM?si=cOOFMFZCgW8FLCiM
Thế nhưng bài này lại có cái tên được dịch là "Anh mãi mãi không hiểu em". Bọn Tàu ngồi nghe ca sĩ của nó hát, nước mắt ngắn dài!
ht...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 21:45 -
-
Comment on Kiểm tra biến ápbởi lamvu0677
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 19:02 -
-
Comment on Kiểm tra biến ápbởi lamvu0677
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 19:02 -
-
Comment on Kiểm tra biến ápbởi lamvu0677
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 19:02 -
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677Cảm on bác chia sẻ,cty làm biến áp nho nhỏ như hình đính kèm, quấn nhiều lớp,gồm 1 cuộn sơ cấp và nhiều cuộn thứ cấp, cứ mỗi lớp cách nhau bằng băng keo , thì cty dùng máy quấn tự động cài đặt số vòng sẵn , chỉ sợ công nhân thao...
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 19:02 -
-
Trả lời cho Suy ngẫmbởi HTTTTHBao giờ cho đến tháng ba,
Ếch cắn cổ rắn tha ra ngoài đồng.
Hùm nằm cho lợn liếm lông,
Một chục quả hồng nuốt lão tám mươi.
Bánh đúc nuốt trẻ lên mười,
Con gà, be rượu nuốt người lao đao.
Lươn nằm cho...-
Channel: Tâm tình dân kỹ thuật
31-05-2024, 23:06 -
-
Trả lời cho Suy ngẫmbởi kehuydiet092Kehuydiet092 chào các bác!nghe bác nguyendinhvan nói em lại nhớ bài Vè nói ngược khi xưa bé học.Hùm nằm cho lợn liếm lông....ếch cắn cổ rắn tha ra ngoài đồng...
-
Channel: Tâm tình dân kỹ thuật
31-05-2024, 20:40 -
-
bởi Nexus 6PCó mạch nào điện vào là 1 viên 18650 để lái bóng led công suất, ứng dụng để thắp sáng, làm đèn pin k bác thớt...
-
Channel: Điện tử công suất
31-05-2024, 15:57 -
-
Trả lời cho Dùng MC34063 để làm driver lái led 1W, 3Wbởi Nexus 6PCảm ơn bác, sẵn bác giới thiệu giúp e mạch lái đèn led công suất chạy 1 viên 18650 để e chế đèn pin với...
-
Channel: Điện tử dành cho người mới bắt đầu
31-05-2024, 15:55 -
-
bởi HieuvtXin chào mọi người.
Cho tôi hỏi cách đọc giá trị của diode dán (T3 B1) là bao nhiêu?
mọi người xem hình và chỉ giáo.. xin cảm ơn
và đây là vị trí diode nguồn PC . có thể thay thế bằng con khách như thế nào?
...-
Channel: Điện tử dành cho người mới bắt đầu
30-05-2024, 23:54 -
Comment