So sánh 89CXX và 89SXX
Hãng Atmel có các chip Vi điều khiển có tính năng tương tự như chip Vi điều khiển MCS-51 của Intel, các mã số chip được thay đổi chút ít khi được Atmel sản xuất. Mã số 80 chuyển thành 89, chẳng hạn 80C52 của Intel khi sản xuất ở Atmel mã số thành 89C52 (Mã số đầy đủ: AT89C52) với tính năng chương trình tương tự như nhau. Tương tự 8051,8053,8055 có mã số tương đương ở Atmel là 89C51, 89C53, 89C55. Vi điều khiển Atmel sau này ngày càng được cải tiến và được bổ sung thêm nhiều chức năng tiện lợi hơn cho người dùng.
Dung lượng RAM | Dung lượng ROM | Chế độ nạp | |
89C51 | 128 byte | 4 Kbyte | song song |
89C52 | 128 byte | 8 Kbyte | song song |
89C53 | 128 byte | 12 Kbyte | song song |
89C55 | 128 byte | 20 Kbyte | song song |
Sau khoảng thời gian cải tiến và phát triển, hãng Atmel tung ra thị trường dòng Vi điều khiển mang số hiệu 89Sxx với nhiều cải tiến và đặc biệt là có thêm khả năng nạp chương trình theo chế độ nối tiếp rất đơn giản và tiện lợi cho người sử dụng.
Dung lượng RAM | Dung lượng ROM | Chế độ nạp | |
89S51 | 128 byte | 4 Kbyte | nối tiếp |
89S52 | 128 byte | 8 Kbyte | nối tiếp |
89S53 | 128 byte | 12 Kbyte | nối tiếp |
89S55 | 128 byte | 20 Kbyte | nối tiếp |
Tất cả các Vi điều khiển trên đều có đặc tính cơ bản giống nhau về phần mềm (các tập lệnh lập trình như nhau), còn phần cứng được bổ sung với chip có mã số ở hai số cuối cao hơn, các Vi điều khiển sau này có nhiều tính năng vượt trội hơn Vi điều khiển thế hệ trước. Các Vi điều khiển 89Cxx như trong bảng 1 có cấu tạoROM và RAM như 98Sxx trong bảng 2, tuy nhiên 98Sxx được bổ sung một số tính năng và có thêm chế độ nạp nối tiếp.
Kết luận
89Sxx dùng chế độ nạp ISP(In System Programming) nên việc nạp cho nó rât đơn giản và rẻ tiền. Ta không cần phải nhổ nó ra mà nạp ngay trên board thông qua một chân ISP. Giá thành làm mạch nạp với là vấn đề. Nếu của AT89C mạch nạp có giá từ 150K trở lên và ta phải hy sinh một con làm master. Còn với 89S thì không cần con master, ta nạp trực tiếp! Và giá thành cho một mạch là rất rẻ (khoảng 35K cho mạch có socket 40 chân). Điều này là rât phù hợp với các bạn sinh viên khi nghiên cứu về 8051. Vậy 7segone có một lời khuyên là các bạn nên dùng 89Sxx.
Toàn bộ câu trúc phần cứng tương thích hoàn toàn, mọi chương trình viết cho 89C đều chạy tốt trên 89S. 7segone đã làm việc nhiều với 89S ngay từ buổi đầu khi bước chân vào lĩnh vực VDK và cảm thấy rất hài lòng về nó.
Code test
//******************************************************************
// Chuong trinh test LED don
// Website: 7segone.com
//******************************************************************
#include <REG51.H>
#include<stdio.h>
sbit LED=P1^2;
unsigned int i,j,k;
//****************Ham tao thoi gian tre 0,5s************************
void delay_ms(unsigned int Time)
{
unsigned int i,j,t;
t=Time;
for(i=0;i<t;i++)
{
for(j=0;j<125;j++);
}
}
//------------------------------------------------------------------
// CHUONG TRINH CHINH
//------------------------------------------------------------------
main()
{
while(1)
{
LED=1;
delay_ms(1000);
LED=0;
delay_ms(1000);
}
}
Không có nhận xét nào:
Đăng nhận xét