May 2017
MonTueWedThuFriSatSun
1234567
891011121314
15161718192021
22232425262728
293031    

Calendar Calendar


co ai lam adc cua avr khong

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

co ai lam adc cua avr khong

Bài gửi  khanhhuy4390 on Wed Jan 02, 2013 10:50 pm

ban nao biet thi up len nhe
avatar
khanhhuy4390
Moderators tập sự

Tổng số bài gửi : 37
Join date : 05/11/2012
Age : 27
Đến từ : BINH DUONG

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  bacviet on Sun Jan 06, 2013 6:25 am

thầy cũng đang nghiên cứu nó nè Huy ơi....phức tạp như PIC vậy đó. Bực cái là mô phỏng avr sao khó chịu thế k biết
avatar
bacviet
Moderators

Tổng số bài gửi : 66
Join date : 07/11/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  bacviet on Sun Jan 06, 2013 6:27 am

em thử cái này nhé HUY
[You must be registered and logged in to see this link.]
avatar
bacviet
Moderators

Tổng số bài gửi : 66
Join date : 07/11/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  Admin on Sun Jan 06, 2013 9:25 am

chuyển qua Pic luôn đi Mr Bắc và Huy. Dùng Pic đỡ nhiễu hơn.

Admin
Admin

Tổng số bài gửi : 79
Join date : 03/11/2012
Age : 35

Xem lý lịch thành viên http://diendientuhvct.forumvi.com

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  bacviet on Mon Jan 07, 2013 8:24 am

đang nghiên cứu dạy AVR mà vì có mấy bộ KIT....còn PIC chỉ mô phỏng. Nhưng mấy cái board này cũng ác quá, nó k cho mình tùy biến nhiều lắm. Vì nó thiết kế cứng rồi.

@HUY: nếu rảnh ghé p223 nghiên cứu mấy KIT AVR nhe....nhiều đồ chơi lắm
avatar
bacviet
Moderators

Tổng số bài gửi : 66
Join date : 07/11/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  khanhhuy4390 on Thu Jan 10, 2013 7:44 pm

em tac mac cho nay ne thay
#define ADC_VREF_TYPE 0x00
sau co nhieu bai thi cho 0x20,co bai lai cho 0xe0 em khong hieu
avatar
khanhhuy4390
Moderators tập sự

Tổng số bài gửi : 37
Join date : 05/11/2012
Age : 27
Đến từ : BINH DUONG

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  bacviet on Thu Jan 10, 2013 10:55 pm

giá trị đó để chọn kiểu áp tham chiếu vref cho ADC....em phải nghiên cứu kỹ các thanh ghi cho ADC nhé
avatar
bacviet
Moderators

Tổng số bài gửi : 66
Join date : 07/11/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  Admin on Fri Jan 11, 2013 3:46 pm

Định đọc thấy hay không biết mọi người đã đọc hay chưa nhưng cứ mạn phép đưa lên đây vậy
[You must be registered and logged in to see this link.]

Admin
Admin

Tổng số bài gửi : 79
Join date : 03/11/2012
Age : 35

Xem lý lịch thành viên http://diendientuhvct.forumvi.com

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  Admin on Fri Jan 11, 2013 3:53 pm

thêm một tài liệu nữa nhé
[You must be registered and logged in to see this link.]

Admin
Admin

Tổng số bài gửi : 79
Join date : 03/11/2012
Age : 35

Xem lý lịch thành viên http://diendientuhvct.forumvi.com

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  khanhhuy4390 on Sat Jan 12, 2013 9:13 pm

thank
avatar
khanhhuy4390
Moderators tập sự

Tổng số bài gửi : 37
Join date : 05/11/2012
Age : 27
Đến từ : BINH DUONG

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  bacviet on Sat Jan 12, 2013 9:25 pm

HUY xem lại cái ví dụ đầu tiên thầy gửi. Mở file mô phỏng, sao thấy cái config cho con mega32 đơn giản ghê. Không biết nó viết trong proteus nào, chứ cái proteus đang xài k thấy được như vậy
avatar
bacviet
Moderators

Tổng số bài gửi : 66
Join date : 07/11/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  khanhhuy4390 on Sun Jan 13, 2013 8:09 pm

chạy ngon lành. cái này sao thấy giống led nháy theo điệu nhạc quá .


Được sửa bởi khanhhuy4390 ngày Sun Jan 13, 2013 8:37 pm; sửa lần 2.
avatar
khanhhuy4390
Moderators tập sự

Tổng số bài gửi : 37
Join date : 05/11/2012
Age : 27
Đến từ : BINH DUONG

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  khanhhuy4390 on Sun Jan 13, 2013 8:12 pm

bacviet đã viết:đang nghiên cứu dạy AVR mà vì có mấy bộ KIT....còn PIC chỉ mô phỏng. Nhưng mấy cái board này cũng ác quá, nó k cho mình tùy biến nhiều lắm. Vì nó thiết kế cứng rồi.

@HUY: nếu rảnh ghé p223 nghiên cứu mấy KIT AVR nhe....nhiều đồ chơi lắm
phòng này thường mở cửa không thầy
avatar
khanhhuy4390
Moderators tập sự

Tổng số bài gửi : 37
Join date : 05/11/2012
Age : 27
Đến từ : BINH DUONG

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  bacviet on Sun Jan 13, 2013 9:58 pm

khanhhuy4390 đã viết:
bacviet đã viết:đang nghiên cứu dạy AVR mà vì có mấy bộ KIT....còn PIC chỉ mô phỏng. Nhưng mấy cái board này cũng ác quá, nó k cho mình tùy biến nhiều lắm. Vì nó thiết kế cứng rồi.

@HUY: nếu rảnh ghé p223 nghiên cứu mấy KIT AVR nhe....nhiều đồ chơi lắm
phòng này thường mở cửa không thầy
tuần sau thầy ở trên trường các buổi sáng.....
avatar
bacviet
Moderators

Tổng số bài gửi : 66
Join date : 07/11/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

ADC cho kỹ thuật số và vi điều khiển nói chung

Bài gửi  thay Khai on Tue Jan 15, 2013 10:07 pm

Trước khi viết chương trình để cho AVR và PIC hay gì gì đi nửa..thì các bạn cần hiểu:
- Để chuyển đổi ADC cần quan tâm tới vấn đề gì?
+ Ngõ vào tương tự. Có bao nhiêu ngõ vào.
+ Chọn kênh ngõ vào nếu nhiều kênh
+ Tần số lầy mẫu (mạch tạo xung có sẵn ở bên trong hoặc tự tạo bên ngoài - thường dùng 74HC14- phải HC mới được)- Bạn nào muốn đọc tại sao cần CLK lấy mẫu thì đọc cuốn Vi Mạch Số của Trường Đại Học Thanh Hoa - Bắc Kinh. Cuốn đó đầy đủ đó.
+ Ngưỡng cho phép đầu vào Analog. Ngưỡng này được quyết định bởi vref+ và vref-
+ Xung đơn ổn để chuyển đổi (xung này từ mạch bên ngoài hoặc là đặt bên trong vi điều khiển)
//
Trong AVR, PIC và một số VĐK khác thì có thêm định dạng dữ liệu số bên phải hay bên trái...xem bit format ấy. Vidu: 1111000011 nếu định dạng bên phải thì dữ liệu sẽ là: Byte cao chứa - 00000011, Byte thấp chứa-11000011; và ngược lại định dạng bên trái: Byte cao chứa - 11110000, Byte thấp chứa - 11000000.
//--------------------------------------------------------------
Trên đây là các nguyên tắc chung, cơ bản cần phải nắm...từ đó bạn có thể dùng mạch số, 89xxx-ADC0808 hay AVR, PIC thì cũng bấy nhiêu vấn đề đó mà thôi.
//----------------------
Bạn đang có bộ kít hay đó nhưng không linh động. Nó giải mã địa chỉ. CÓ thể nó dùng IC chốt kết hợp 8255 không chừng?
Ai đó có gì gởi mình phần cứng để mình phân tích với...cái nào mình hiểu thì mình phụ cho. Cái nào mình không hiểu thì...
[You must be registered and logged in to see this link.]
(Xem mạch tôi dùng IC số để chuyển đổi:
[You must be registered and logged in to see this link.] vào [You must be registered and logged in to see this link.]
//==========================================
Ví dụ:
#include <mega16.h>
#include <delay.h>
// Standard Input/Output functions
#include <stdio.h>
#include <stdlib.h>


#define ADC_VREF_TYPE 0xE0

// Read the 8 most significant bits
// of the AD conversion result
unsigned char read_adc(unsigned char adc_input)
{
ADMUX=adc_input|ADC_VREF_TYPE;
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCH;
}

// Declare your global variables here

void main(void)
{
unsigned char value;
float Vin;
char mystr[11];
// Declare your local variables here

PORTA=0x00;
DDRA=0x00;

PORTB=0x00;
DDRB=0x00;

PORTC=0x00;
DDRC=0x00;

PORTD=0x00;
DDRD=0x00;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;

// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;

// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: Off
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud rate: 9600
UCSRA=0x00;
UCSRB=0x08;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x2F;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

// ADC initialization
// ADC Clock frequency: 115.200 kHz
// ADC Voltage Reference: Int., cap. on AREF
// ADC Auto Trigger Source: None
// Only the 8 most significant bits of
// the AD conversion result are used
ADMUX=ADC_VREF_TYPE;
ADCSRA=0x86;

while (1)
{
// Place your code here
value=read_adc(0);
if ((value!=0)&&(value!=255)) ++value;
printf("ADC0=%d\n\r",value);

Vin=(float)value*2.56*1000/256;
ftoa(Vin,0,mystr); //float to string
printf("Vin0=%smV\n\r",mystr);
printf("\n\r");

delay_ms(500);
};
}
Nhớ dùng terminal trong protues để xem khi mô phỏng.



Được sửa bởi thay Khai ngày Tue Jan 15, 2013 10:22 pm; sửa lần 2.

thay Khai

Tổng số bài gửi : 23
Join date : 14/11/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

Dùng AVR hay PIC

Bài gửi  thay Khai on Tue Jan 15, 2013 10:17 pm

Mình cũng thường xài PIC nhưng tội cho AVR. Thật không dể để hiểu về nhiễu.
Về phân cứng khắc phục nhiễu như thế nào?
Về phần mềm, Bạn hãy xem về watchdog để làm gì?

thay Khai

Tổng số bài gửi : 23
Join date : 14/11/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: co ai lam adc cua avr khong

Bài gửi  Sponsored content


Sponsored content


Về Đầu Trang Go down

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết