LỜI NÓI ĐẦU .1
CHƯƠNG1. HỌ VI ĐIỀU KHIỂN 8051 4
1.1. GIỚI THIỆU CẤU TRÚC PHẦN CỨNG HỌ MCS-51 (89C51): 4
1.1.1. Giới thiệu họ MCS -51 4
1.1.2. KHẢO SÁT SƠ ĐỒ CHÂN 89C51, CHỨC NĂNG TỪNG CHÂN .5
1.1.2.1 Sơ đồ chân 89C51 .5
1.1.2.2. Chức năng các chân của 89C51 6
1.1.3. CẤU TRÚC BÊN TRONG VI ĐIỀU KHIỂN 8
1.1.3.1. Tổ chức bộ nhớ .8
1.1.3.2. Các thanh ghi có chức năng đặc biệt: .11
1.1.3.3. Bộ nhớ ngoài (External memory): 14
1.1.4. HOẠT ĐỘNG TIMER CỦA 89C51 .16
1.1.4.1. Giới thiệu 16
1.1.4.2. Thanh ghi điều khiển Timer TCON: 17
1.1.4.3. Thanh ghi mode timer (TMOD): 18
1.1.4.4. Các mode và cờ tràn .18
1.1.4.5. Các nguồn xung clock (CLOCK SOURCES): .20
1.1.4.6. Sự bắt đầu, dừng và điều khiển các timer: .21
1.1.4.7. Sự khởi động và truy xuất các thanh ghi timer: .22
1.1.5. CỔNG NỐI TIẾP 22
1.1.5.1. Giới thiệu: .22
1.1.5.2. Thanh ghi port nối tiếp: 23
1.1.5.3. Các chế độ hoạt động 24
1.1.6. TỔ CHỨC NGẮT CỦA MCS51 26
1.1.6.1. Ưu tiên ngắt: .27
1.1.6.2. Hỏi vòng tuần tự: 27
1.1.7. TÓM TẮT TẬP LỆNH CỦA 89C51 28
1.1.7.1. Các chế độ định vị địa chỉ (addressing mode): 28
1.1.7.2. Tóm tắt tập lệnh của họ MCS – 51: 28
1.2 VI ĐIỀU KHIỂN AT89C55 31
1.2.1 Đặc trưng .31
1.2.2. Phần mô tả .32
1.3 VI ĐIỀU KHIỂN AT89C54/58 .48
1.3.1 Mô tả .48
1.3.2.Tổ chức bộ nhớ .49
1.4 VI ĐIỀU KHIỂN AT89C2051 .55
1.4.1 Đặc trương của AT89C2051 55
1.4.2 Mô tả .55
CHƯƠNG 2. HỌ VI ĐIỀU KHIỂN AVR AT90S8535 57
2.1 Các đặc tính .57
2.2. Phần mô tả 59
CHƯƠNG 3. CÔNG NGHỆ CHIP PSoC .77
3.1 Chíp PSoC CY8C29x66 .77
3.1.1 Chức năng 77
3.1.2 Sơ lược chức năng của PSoC 79
3.2. Ngôn ngữ lập trình cho PSoC .84
3.3 Giới thiệu những nét cơ bản về IDE .85
99 trang |
Chia sẻ: tlsuongmuoi | Lượt xem: 2182 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Các hệ vi xử lý mới, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ng bộ lập bộ nhớ không mất nội dung qui ước.bằng cách kết hợp cpu
linh hoạt 8bit với Flash trên một chíp mạnh đáp ứng cho ta những ứng dụng diều khiển
AT89C2051 thiết kế với logic tĩnh cho hoạt động có tần số giảm xuống 0 và
hỗ trợ hai chế độ tiết kiệm năng lượng. Nó có các chế độ như chế độ nghỉ dừng CPU
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 55
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
trong khi vẫn cho phép RAM,các bộ định thời/đếm,port nối tiếp và hệ thống ngắt tiếp
tục hoạt động.
Chế độ nguồn giảm duy trì nội dung trong RAM không cho mạch dao động
cung cấp xung clock nhằm vô hiệu hoá
Các hoạt động khác của chíp cho đến khi có reset phần cứng tiếp theo.
Cấu hình chân ra AT89C2051:
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 56
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
CHƯƠNG 2. HỌ VI ĐIỀU KHIỂN AVR AT90S8535
2.1 Các đặc tính
AVR -Cấu trúc RISC(reduced instruction set computer:máy tính dùng tập lệnh rút
gọn) hiệu năng cao- nguồn điện thấp
• 118 lệnh mạnh mẽ -Đa số thực hiện theo đồng hồ chu kỳ đơn
• 32 x 8 thanh ghi làm việc chế độ đa dụng
• Lên tới 8 triệu lệnh mỗi giây thông lượng 8 MHZ
• 8k bytes trong hệ thống có thể chương trình hoá một cách nhanh chóng
• Bộ giao diện nối tiếp SPI trong hệ thống lập trình
• Khả năng chịu đựng : 1,000 viết/xoá bỏ những chu trình
• 512 Bytes EEPROM
• Khả năng chịu đựng : 100,000 viết/xoá bỏ những chu trình
• 512 Bytes SRAM bên trong
• Soạn chương trình khoá cho các phần mềm an toàn
• 8 kênh, 10 bit ADC(Analog – to digital conversion:chuyển đổi tín hiệu tương
tự sang tín hiệu số)
• Có thể chương trình hoá hệ thống UART
• Bộ giao diện nối tiếp SPI chủ/khách
• Hai thiết bị tính giờ/máy đếm 8 - bit cùng với máy đếm và chế độ so sánh riêng
biệt
• Một thiết bị tính giờ/máy đếm 16 – bit cùng với máy đếm, chế độ so sánh và sự
giành được riêng biệt và đôi 8-, 9-,10- bit PWM
• Người kiểm soát thiết bị tính giờ có thể lập trình với việc bật bộ dao động chíp
• Máy so sánh tương tự trên chíp
• Mạch xác lập lại nguồn điện
• Đồng hồ thời gian thực(RTC) cùng với bộ dao động và kiểu máy đếm riêng biệt
• Các nguồn ngắt bên trong và bên ngoài
• Ba chế độ ngủ(tĩnh) : chế độ nhàn rỗi, chế độ tiết kiệm điện, chế độ ngắt điện.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 57
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Tiêu thụ điện ở 4 MHz, 3V, 20°C
-Hoạt động : 6.4 mA
-Chế độ nhàn rỗi: 1.9 mA
-Chế độ ngắt điện: <1 µA
Vào/Ra và các gói
-32 đường vào ra có thể lập trình được
-40-bước(răng ren) PDIP, 44- bước(răng ren) PLCC, 44- bước(răng ren) TQFP,
và 44-giỏ(Đ ơn v ị đo l ường) MLF
Điện áp hoạt động
- VCC: 4.0 - 6.0V AT90S8535
- VCC: 2.7 - 6.0V AT90LS8535
Các mức tốc độ
- 0 - 8 MHz cho AT90S8535
- 0 - 4 MHz cho AT90LS8535
Những cấu hình chân
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 58
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
2.
cấ
đồ
ch
th
32
gi
tu
độ
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 59
2. Phần mô tả
AT90S8535 là một chip CMOS vi điều khiển 8 – bit công suất nhỏ dựa trên
u trúc của AVR RISC. Bằng việc thực hiện mạnh mẽ các lệnh trong một chu kỳ
ng hồ đơn, AT90S8535 đạt được thông lượng gần 1 triệu lệnh/giây cho mỗi MHZ
o phép trình thiết kế tối ưu hoá
Lõi AVR kết hợp với một lệnh thiết lập với 32
thanh ghi đa năng đang làm việc. Tất cả 32 thanh ghi
được nối trực tiếp tới bộ số học logic (ALU), cho phép
hai thanh ghi độc lập được truy cập trong một lệnh đơn
được thực hiện trong một chu kỳ đồng hồ.Kết quả cấu
trúc là nhiều mã hiệu quả hơn trong khi dạt được lưu
lượng lên tới mười lần nhanh hơn CISC microcontrollers.
AT90S8535 cung cấp những đặc tính sau:8KB cho hệ
ống lập trình tia sáng, 512Byte EEPROM, 512Byte SRAM, 32 chân vào ra đa năng,
thanh ghi đa năng đang làm việc, đồng hồ thời gian thực, (RTC), ba thiết bị
ờ/máy linh hoạt với cách thức so sánh, những ngắt ngoài và bên trong một UART
ần tự lập trình được, 8 kênh, 10 bit ADC thiết bị bấm giờ lập trình được với bộ giao
ng bên trong,một cổng SPI nối tiếp và ba phần mềm có thể chọn được chế độ tiết
Hình 2.1. Sơ đồ chân AT90S8535
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
kiệm điện. Chế độ nhàn rỗi dừng CPU trong khi cho phép SRAM, thiết bị tính
giờ/máy đếm, hệ thống cổng và ngắt tiếp tục được hoạt động. Chế độ ngắt điện cất giữ
nội dung thanh ghi nhưng làm treo máy tạo dao động, vô hiệu hoá tất cả các chức năng
khác của chíp cho tới khi ngắt tiếp hoặc phần cứng thiết lập lại.Trong chế độ tắt điện ,
máy tạo dao động tính giờ tiếp tục để chạy, cho phép người sử dụng bảo vệ thiết bị
tính giờ căn bản trong khi các phần còn lại của thiết bị đang dừng ở giữa chừng. Thiết
bị được sản xuất đang sử dụng mật độ cao bộ nhớ công nghệ không linh hoạt . ISP
trong chip Flash cho phép bộ nhớ chương trình được chương trình hoá trong hệ thống
qua một mạch ghép nối tiếp SPI hoặc bởi kí ức lập trình viên không linh hoạt. Bằng
việc kết hợp một CPU có tệp thu gọn 8 –bit cùng với hệ thống lập trình được Flash hoá
trên một chip đơn. AT90S8535 Atmel là một vi điều khiển mạnh mà cung cấp một giải
pháp có tính linh hoạt cao và chi phí hợp lí tới nhiều điều khiển nhúng. AVR
AT90S8535 được hỗ trợ với một bộ đầy đủ chương trình và những công cụ phát triển
hệ thống . Bao gồm : Những người biên tập C, những chương trình hợp ngữ vĩ mô,
những trình gỡ rối/những sự mô phỏng, sự mô phỏng trong mạch và sự đánh giá các
dụng cụ.
Mô tả chân
VCC Cung cấp Điện áp Số
GND Tiếp đất số
Port A (PA7..PA0) Cổng A là một cổng vào ra có hướng 8-bit. Những chốt
cổng có thể cung cấp một điện trở trong quá tải (được chọn cho mỗi bit). Cổng A bộ
đệm đầu ra có thể hụt 20 mA và có thể trực tiếp điều khiển hiỉen thị đèn LED. Khi các
chốt từ PA0 đến PA7 được sử dụng như những dữ liệu vào thì ngoài được kéo thấp,
chúng sẽ là dòng điện nguồn nếu điện trở trong quá tải lên được hoạt động .Cổng A
cũng đáp ứng như những dữ liệu vào tương tự đến bộ biến đổi A/D. Các chốt cổng A
là ba trạng thái khi một điều kiện thiết lập lại được hoạt động , thậm chí nếu đồng hồ
không phải đang chạy.
Port B (PB7..PB0) Cổng B là một cổng vào ra có hướng 8-bit cùng với điện
trở trong tăng vọt. Cổng B bộ đệm đầu ra có thể hụt 20 mA. Như những dữ liệu vào,
các chốt cổng B những cái mà ngoài được kéo thấp sẽ là nguồn điện nếu như điện trở
quá tải được hoạt động. Cổng B cũng phục vụ cho các chức năng của những đặc tính
đặc biệt khác của AT90S8535 như đã được liệt kê ở trang 78. Các chốt cổng B là ba
trạng thái khi một điều kiện thiết lập lại được hoạt động , thậm chí nếu đồng hồ không
phải đang chạy.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 60
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Port C (PC7..PC0) Cổng C những bộ đệm đầu ra có thể hụt 20 mA. Như
những dữ liệu vào, các chốt cổng C những cái mà ngoài được kéo thấp sẽ là nguồn
điện nếu như điện trở quá tải được hoạt động. Hai chốt cổng C có thể như sự lựa chọn
được sử dụng như máy tạo dao động cho thiết bị tính giờ/máy đếm2. Các chốt cổng C
là ba trạng thái khi một điều kiện thiết lập lại được hoạt động , thậm chí nếu đồng hồ
không phải đang chạy.
Port D (PD7..PD0) Cổng D là một cổng vào ra có hướng 8-bit cùng với điện
trở trong quá tải. Cổng B bộ đệm đầu ra có thể hụt 20 mA. Như những dữ liệu vào,
các chốt cổng B những cái mà ngoài được kéo thấp sẽ là nguồn điện nếu như điện trở
quá tải được hoạt động. Cổng D cũng phục vụ cho các chức năng của những đặc tính
đặc biệt khác của AT90S8535 như đã được liệt kê ở trang 86. Các chốt cổng D là ba
trạng thái khi một điều kiện thiết lập lại được hoạt động , thậm chí nếu đồng hồ không
phải đang chạy.
Reset dữ liệu đầu vào.Một thiết lập bên ngoài được sinh ra bởi một
mức thấp trên chốt ESET. Thiết lập lại xung dài hơn 50 ns sẽ sinh ra một reset, dù
đồng hồ không phải đang chạy. Các xung ngắn hơn không được bảo đảm phát sinh ra
một reset.
XTAL1 Dữ liệu tới máy khuếch đại bộ dao động đảo và dữ liệu mạch điều
hành bên trong đồng hồ.
XTAL2 Dữ liệu ra từ máy khuếch đại bộ dao động đảo
AVCC là chốt cung cấp điện áp cho cổng A và bộ biến đổi tương tự/số. Nếu
ADC không được sử dụng, chốt này phải được kết nối tới VCC. Nếu ADC được sử
dụng, chốt này phải được kết nối tới VCC qua một bộ lọc thông thấp. Xem trang 68
những thao tác chi tiết trên ADC.
AREF la sự đối chiếu dữ liệu vào tương tự cho bộ biến đổi tương tự/số. Để
ADC hoạt động, một điện áp trong phạm vi 2V phải được ứng dụng vào chốt này.
AGND Tiếp đất số. Nếu bản mạch có một mắt đáy tương tự riêng biệt, chốt
này nên được kết nối tới mặt đáy. Cách khác thì kết nối tới GND.
Bộ dao động tinh thể XTAL1 và XTAL2 là dữ liệu đầu vào và dữ liệu đầu ra ,
tương ứng, của một máy khuếch đại đảo cái mà có thể được cấu hình cho việc sử dụng
như một bộ dao động trong chíp, như biểu diễn trong Hình 2. Cũng giống như một tinh
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 61
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
thể thạch anh hoặc một thiết bị cộng hưởng âm thanh có thể được sử dụng.
Hình 2.3. Sơ đồ bộ dao dộng
Đồng hồ ngoài:Để điều khiển thiết bị từ một nguồn đồng hồ ngoài, XTAL2
cần phải được để lại rời rạc trong khi XTAL1 được điều khiển như đã chỉ ra trong
Bộ dao động Timer:Cho các chốt bộ dao động Timer, TOSC1 và TOSC2, tinh
thể được kết nối trực tiếp giữa các chốt. Không một tụ điện ngoài nào đựơc cần đến.
Bộ dao động được tối ưu hoá cho sự sự dụng cùng với một đồng hồ tinh thể tần số
32,768 Hz. Việc áp dụng một nguồn đồng hồ ngoài vào TOSC1không được đề cập tới.
Kiến trúc tổng quan: Truy cập nhanh khái niệm thanh ghi tệp tin chứa chế độ
làm việc thanh ghi đa năng 32 x 8 bit cùng với thời gian truy xuất một chu kỳ đồng hồ
đơn. Điều đó có nghĩa là trong suốt một chu kỳ đồng hồ đơn, một thao tác ALU
(Arithmetic Logic Unit: Đơn vị số học logic) được thực hiện. Hai toán hạng là dữ liệu
đầu ra từ thanh ghi tệp tin. Phép toán được thực hiện và kết quả được lưu trữ trong
thanh ghi tệp tin trong một chu kỳ đồng hồ. Sáu trong số 32 thanh ghi có thể được sử
dụng khi ba con trỏ thanh ghi địa chỉ gián tiếp 16 bit định vị trí không gian dữ liệu,
cho phép những sự tính toán địa chỉ hiệu quả .Một trong ba con trỏ địa chỉ cũng có thể
được sử dụng như con trỏ địa chỉ để chức năng của bảng tra cưu không thay đổi.
Những thanh ghi chức năng bổ sung này là 16- bít thanh ghi –X, thanh ghi –Y, thanh
ghi –Z.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 62
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Hình 2.4. Cấu trúc AT90S8535 AVR RISC
ALU hỗ trợ các hàm số học và các hàm logic học giưũa các thanh ghi hoặc
giữa một hằng số và một thanh ghi.Các thao tác thanh ghi đơn cũng được thực hiện
trong ALU. Hình 4 biểu diễn cấu trúc vi điều khiển AT90S8535 AVR RISC . Ngoài
thao tác thanh ghi, cách đánh địa chỉ bộ nhớ quy ước cũng có thể được sử dụng trên
thanh ghi tệp tin cũng được. Điều đó được cho phép bởi thực tế mà thanh ghi tệp tin là
1041H–11/01 được gán 32 địa chỉ không gian dữ liệu thấp nhất ($00-$1F) cho phép
chúng được truy cập dường như chúng là những sự định vị bộ nhớ bình thường. Không
gian nhớ vào/ra chứa 64 địa chỉ cho những chức năng ngoại vi CPU khi những thanh
ghi điều khiển, Timer/Counters, các bộ đổi tương tự/số và các hàm vào ra khác vận
hành. Bộ nhớ vào ra có thể được truy cập trực tiếp hoặc trong khi sự định vị trí không
gian dữ liệu theo sau đó của thanh ghi tệp tin, $20 - $5F. AVR sử dụng khai niệm cấu
trúc Harvard –cùng với các bộ nhớ riêng biệt các Bus chương trình và dữ liệu.Bộ nhớ
chương trình được thực hiện cùng với một ống dẫn hai bước. Trong khi một chỉ dẫn
đang được thực hiện, thì chỉ dẫn tiếp theo được đem về trước từ bộ nhớ chương trình.
Khái niệm này cho phép các chỉ dẫn sẽ được thực hiện trong mọi chu kỳ đồng hồ. Bộ
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 63
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
nhớ chương trình co thể tải xuống hệ thống bộ nhớ Flash. Với sự nhảy tương đối và
những chỉ dẫn gọi, toàn bộ 4 K vùng địa chỉ trực tiếp được truy nhập. Đa số AVR chỉ
dẫn có một khổ từ 16- bít đơn. Mỗi địa chỉ bộ nhớ chương trình chứa 16 hoặc 32 bit
chỉ dẫn. Trong thời gian những ngắt và những sự gọi chương trình con, bộ đếm địa chỉ
chương trình (PC) trả lời được lưu trữ trên ngăn xếp. Ngăn xếp thì có hiệu quả được
cấp phát trong dữ liệu chung SRAM và vậy thì, kích thước ngăn xếp chỉ được hạn chế
bởi tổng kích thước của SRAM và cách dùng SRAM. Hầu hết người sử dụng chương
trình phải được khởi tạo lại SP trong việc khởi động lại thủ tục (trước khi các chương
trình con hay các ngắt được thực hiện).Con trỏ ngăn xếp 10- bít (SP) thì có thể tiếp cận
đọc/ghi trong không gian vào/ra. 512 bytes dữ liệu SRAM có thể dễ dàng được truy
nhập qua năm cách đánh địa chỉ khác nhau được hỗ trợ trong cấu trúc AVR. Không
gian bộ nhớ trong cấu trúc AVR là tất cả bản đồ bộ nhớ tuyến tính và bình thường.
Hình 2.5. Các bản đồ bộ nhớ
Một module ngắt linh hoạt có các thanh ghi điều khiển của nó trong không gian
vào/ra với một bổ sung ngắt chung cho phép bit trong thanh ghi trạng thái. Hầu hết
các ngắt khác có một vectơ ngắt riêng biệt trong bảng vectơ ngắt tại lúc bắt đầu bộ
nhớ chương trình. Các ngắt khác có quyền ưu tiên theo vị trí vectơ ngắt của chúng.
The Địa chỉ véctơ ngắt càng thấp, quyền ưu tiên càng cao.
Thanh ghi tệp tin đa năng: Hình 6 biểu diễn cấu trúc sự hoạt động của 32
thanh ghi đa năng trong CPU
Hình 2.6: Sự hoạt động của thanh ghi đa năng trong AVR CPU
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 64
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Mọi lệnh điều hành thanh ghi trong tập lệnh có chu trình trực tiếp và Đơn truy
nhập tới mọi thanh ghi.Chỉ có một ngoại lệ là năm chỉ dẫn hằng số số học và logic học
SBCI, SUBI, CPI, ANDI và ORI giữa một hằng số và một thanh ghi và chỉ dẫn LDI để
tải dữ liệu triền miên tức thời. Những chỉ dẫn này ứng dụng vào một nửa các thanh ghi
trong thanh ghi tệp tin (R16..R31). Nói chung SBC, SUB, CP, AND hoặc OR Và mọi
thao tác giữa hai thanh ghi hoặc trên một thanh ghi áp dụng tới toàn bộ thanh ghi tập
tin. Như biểu diễn ở hình 6, mỗi thanh ghi được gán một dữ liệu địa chỉ bộ nhớ, ánh xạ
trực tiếp chúng vào trong 32 vị trí đầu tiên của người sử dụng không gian dữ liệu.Mặc
dù không được thực hiện về mặt vật lý như vị trí SRAM, việc tổ chúc bộ nhớ này cung
cấp sự linh hoạt lớn trong truy nhập thanh ghi, như các thanh ghi X-, Y-, và Z có thể
được thiết lập tới chỉ mục một vài thanh ghi trong tệp tin.
Thanh ghi X, thanh ghi Y, Các thanh ghi từ R26..R31 có bổ sung thêm một số
thanhghi Z chức năng dến cách sử dụng đa năng của chúng. Những thanh ghi này là
những con trỏ địa chỉ cho sự định địa chỉ gian tiếp của không gian địa chỉ. Ba thanh
ghi định địa chỉ gián tiếp X, Y, Z được định nghĩa trong hình7.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 65
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Hình 2.8. Thanh ghi X-, Y-, Z
Trong các cách đánh địa chỉ khác nhau, những thanh ghi địa chỉ này có các
chức năng như sự dịch chuyển cố định, sự gia tăng và sự giảm bớt tự động (xem sự
mô tả cho những sự chỉ dẫn khác nhau).
ALU-Arithmetic Logic Unit: Điều hành AVR ALU hiệu năng cao trong kết
nối trực tiếp với tất cả sự hoạt động của 32 thanh ghi đa năng. Bên trong một đồng hồ
chu kỳ đơn, thao tác ALU giữa các thanh ghi trong thanh ghi tệp tin được thực hiện.
Thao tác ALU được chia thành ba mục chính: số học, logic, các bit chức năng.
Hệ thống lập trình cực nhanh AT90S8535 chứa đựng 8 KB trong chíp hệ
Bộ nhớ chương trình thống lập trình cực nhanh cho việc lưu trữ chương
trình.Từ đó tất cả các chỉ dẫn là các từ 13 hoặc 32 bit, Flash được sắp xếp như 4K x
16. Bộ nhớ Flash có khả năng ghi/xoá ít nhất 1000chu kỳ. Bộ đếm chương trình
AT90S8535 là 12 bits rộng, như vậy đinh vị 4096 địa chỉ chương trình bộ nhớ. Xem
trang 99 cho sự mô tả chi tiết quá trình tải dữ liệu trên Flash Xem trang 12 cho kiểu
định vị của chương trình nhớ khác nhau
NHỮNG CÁCH ĐÁNH ĐỊA CHỈ CHO CHƯƠNG TRÌNH VÀ DỮ LIỆU
AT90S8535 được người điều khiển máy tính hổ trợ những cách đánh địa chỉ
hiệu quả và mạnh cho sự truy nhập vào bộ nhớ chương trình (flash) và bộ nhớ dữ liệu
(SRAM, Register file and I/O memory). Mục này mô tả sự khác nhau giữa các cách
đánh địa chỉ được hổ trợ bởi cấu trúc AVR. Trong hình, OP có nghĩa là thao tác phần
mã của từ lệnh. Đơn giản hoá, không phải tất cả các hình cho tháy sự định vị chính xác
của cacs bits địa chỉ.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 66
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
THANH GHI TRỰC TIẾP, THANH GHI ĐƠN Rd
Hình 2.9. Thanh ghi địa chỉ đơn trực tiếp
Toán hạng được chứa đựng trong thanh ghi d(Rd).
THANH GHI TRỰC TIẾP,HAI THANH GHI Rd và Rr
Hình 2.10. Thanh ghi địa chỉ trực tiếp, hai thanh ghi
Toán hạng được chứa đựng trong thanh ghi r(Rr) và d (Rd). Kết quả được lưu
trữ trong thanh ghi d (Rd).
VÀO/RA TRỰC TIẾP
Hình 2.11. Địa chỉ vào/ra trực tiếp
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 67
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Địa chỉ toán hạng được chứa đựng trong 6 bits của từ lệnh. n là đích hoặc
nguồn của thanh ghi địa chỉ.
DỮ LIỆU TRỰC TIẾP
Hình 2.12. địa chỉ dữ liệu trực tiếp
Một địa chỉ dữ liệu 16 bits được chứa đựng trong 16 LSBs của 2 từ lệnh.Rd/Rr
chỉ rõ đích hoặc nguồn của thanh ghi.
DỮ LIỆU GIÁN TIẾP VỚI SỰ THUYÊN CHUYỂN
Hình 2.13. Dữ liệu gián tiếp với sự thuyên chuyển
Địa chỉ toán hạng là kết quả của thanh ghi Y- hoặc Z- nội dung thêm vào những
địa chỉ được chứa đựng trong 6 bits của từ lệnh.
DỮ LIỆU GIÁN TIẾP
Hình 2.14. Địa chỉ dữ liệu gián tiếp
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 68
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Địa chỉ toán hạng là nội dung thanh ghi X-,Y- hoặc Z-.
DỮ LIỆU GIÁN TIẾP VỚI SỰ GIẢM BỚT
Hình 2.15. Địa chỉ dữ liệu gián tiếp với sự giảm bớt
Thanh ghi X-,Y- hoặc Z- được giảm bớt trước khi thao tác. Địa chỉ toán hạng là nội
dung giảm bớt của các thanh ghi X-,Y- hoặc Z-.
DỮ LIỆU GIÁN TIẾP VỚI SỰ TĂNG DẦN
Hình 2.16. Địa chỉ dữ liệu gián tiếp với sự tăng dần
Thanh ghi X-,Y- hoặc Z- được tăng lên sau khi thao tác. Địa chỉ toán hạng là
nội dung của thanh ghi X-,Y- hoặc Z- theo trật tự tăng dần.
ĐỊA CHỈ HẰNG SỐ SỬ DỤNG LỆNH LPM
Hình 2.17. Mã bộ nhớ địa chỉ hằng số
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 69
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Địa chỉ hằng số byte được chỉ rõ bởi nội dung của thanh ghi Z-. 15MSBs lựa
chon từ địa chỉ (0-4k),LSB lựa chọn byte thấp nếu xoá(LSB=0) hoặc lựa chon byte cao
nếu thiết lập(LSB=1).
SỰ ĐỊNH VỊ CHƯƠNG TRÌNH GIÁN TIẾP IJMP VÀ ICALL
Hình 2.18. Sự định vị bộ nhớ chương trình gián tiếp
Sự thực hiện chương trình tiếp tục ở địa chỉ chứa đựng bởi thanh ghi Z-(i.e., PC
được nạp vào với nội dung của thanh ghi Z- )
SỰ ĐỊNH VỊ CHƯƠNG TRÌNH TƯƠNG ĐỐI RJMB VÀ RCALL
Hình 2.19. Sự định vị bộ nhớ chương trình tương đối
Sự thực hiện chương trình tiếp tục ở địa chỉ PC + k + 1. Địa chỉ tương đối k là
từ 2048 tới 2047.
BỘ NHỚ DỮ LIỆU EEPROM
AT90S8535 chứa 512 bytes của bộ nhớ dữ liệu EEPROM. Nó được tổ chức như là
một không gian dữ liệu riêng biệt, trong đó không có một bits đơn nào có thể được đọc
và viết. EEPROM có một sự chịu đựng của ít nhất 100,000 viết/xoá bỏ những chu
trình. Sự truy cập giữa EEPROM và CPU được mô tả trong trang 51 chỉ rõ những
thanh ghi địa chỉ EEPROM , dữ liệu thanh ghi EEPRROM và thanh ghi điều khiển
EEPROM. Để tải dữ liệu SPI , xem trang 99 đã mô tả chi tiết.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 70
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
THỜI GIAN TRUY CẬP BỘ NHỚ VÀ CHỈ DẪN TÍNH TOÁN THỜI GIAN THỰC HIỆN
mục này mô tả những khái niệm tính toán thời gian truy nhập chung cho sự thực
hiện lệnh và truy cập bộ nhớ trong AVR CPU được điều khiển bởi đồng hồ hệ thống
Ø, được phát sinh từ tinh thể đồng hồ ngòi cho chip.Không có bộ phận bên trong đồng hồ
nào được sử dụng. Hình 20 cho thấy tìm nạp lệnh và thực hiện lệnh song song bởi cấu
trúc Harvard và khái niệm truy nhập nhanh danh sách thanh ghi. Đây là khái niệm cơ
bản về độ che ống dẫn tồn tại trên 1MIPS cho mỗi MHZ với những kết quả duy nhất
tương ứng cho những hàm giá, hàm đồng hồ, hàm luỹ thừa đơn vị.
Hình 2.20 : Tìm nạp lệnh và thực hiện lệnh song song
Hình 2.21 cho thấy khái niệm tính toán thời gian bên trong cho danh sách thanh
ghi. Trong một chu kỳ máy một thao tác ALU sử dụng hai thanh ghi toán hạng được
thực hiện và kết quả được lưu trữ sau thanh ghi đích
Hinh 2.21. Chu trình thao tác đơn ALU
Sự truy nhập dữ liệu bên trong SRAM được thực hiện trong hai chu kỳ máy
được mô tả trong hình 2.22
Hình 2.22. Chu trình truy cập dữ liệu trên SRAM
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 71
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
BỘ NHỚ VÀO/RA
Định nghĩa không gian I/O của AT90S8035 được thể hiện ở bảng 1
Bảng 1. Không gian vào ra của AT90S8535
Địa chỉ
vào/ra
(Địa chỉ
SRAM)
Tên
CHỨC NĂNG
$3F ($5F) SREG Thanh ghi trạng thái
$3E ($5E) SPH Con trỏ ngăn xếp cao
$3D ($5D) SPL Con trỏ ngăn xếp thấp
$3B ($5B) GIMSK ngắt tổng quát thanh ghi mặt nạ
$3A ($5A) GIFR ngắt tổng quát thanh ghi cờ
$39 ($59) TIMSK ngắt thiết bị bấm giờ/bộ đếm thanh ghi mặt nạ
$38 ($58) TIFR ngắt thiết bị bấm giờ/bộ đếm thanh ghi cờ
$35 ($55) MCUCR Thanh ghi điều khiển tổng quát MCU
$34 ($45) MCUSR Thanh ghi trạng thái tổng quát MCU
$33 ($53) TCCR0 thiết bị bấm giờ/bộ đếm0 thanh ghi điều khiển
$32 ($52) TCNT0 thiết bị bấm giờ/bộ đếm0 (8-bit)
$2F ($4F) TCCR1A thiết bị bấm giờ/bộ đếm 1 thanh ghi điều khiển A
$2E ($4E) TCCR1B thiết bị bấm giờ/bộ đếm 1 thanh ghi điều khiển B
$2D ($4D) TCNT1H thiết bị bấm giờ/bộ đếm 1 byte cao
$2C ($4C) TCNT1L thiết bị bấm giờ/bộ đếm 1 byte thấp
$2B ($4B) OCR1AH thiết bị bấm giờ/bộ đếm 1 so sánh đầu ra thanh ghi A byte
cao
$2A ($4A) OCR1AL thiết bị bấm giờ/bộ đếm 1 so sánh đầu ra thanh ghi A byte
thấp
$29 ($49)
OCR1BH thiết bị bấm giờ/bộ đếm 1 so sánh đầu ra thanh ghi B byte
cao
$28 ($48)
OCR1BL thiết bị bấm giờ/bộ đếm 1 so sánh đầu ra thanh ghi B byte
thấp
$27 ($47) ICR1H T/C 1 nhập vào thanh ghi bắt giữ lại byte cao
$26 ($46) ICR1L T/C 1 nhập vào thanh ghi bắt giữ lại byte thấp
$25 ($45) TCCR2 thiết bị bấm giờ/bộ đếm 2 thanh ghi điều khiển
$24 ($44) TCNT2 thiết bị bấm giờ/bộ đếm 2 (8-bit)
$23 ($43) OCR2 thiết bị bấm giờ/bộ đếm 2 so sánh đầu ra thanh ghi
$22 ($42) ASSR Thanh ghi trạng thái kiểu không đồng bộ
$21 ($41) WDTCR thiết bị bấm giờ Watchdog thanh ghi điều khiển
$1F ($3E) EEARH EEPROM thanh ghi địa chỉ byte cao
$1E ($3E) EEARL EEPROM thanh ghi địa chỉ byte thấp
$1D ($3D) EEDR EEPROM thanh ghi dữ liệu
$1C ($3C) EECR EEPROM thanh ghi điều khiển
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 72
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
$1B ($3B) PORTA Thanh ghi dữ liệu, cổng A
$1A ($3A) DDRA hướng thanh ghi dữ liệu, cổng A
$19 ($39) PINA nhập vào pins, cổng A
$18 ($38) PORTB Thanh ghi dữ liệu, cổng B
17 ($37) DDRB Hướng thanh ghi dữ liệu, cổng B
$16 ($36) PINB nhập vào pins, cổng B
$15 ($35) PORTC Thanh ghi dữ liệu , cổng C
$14 ($34) DDRC Hướng thanh ghi dữ liệu , cổng C
$13 ($33) PINC nhập vào pins, cổng C
$12 ($32) PORTD Thanh ghi dữ liệu , cổng D
$11 ($31) DDRD Hướng thanh ghi dữ liệu, cổng D
$10 ($30) PIND nhập vào pins, cổng D
$0F ($2F) SPDR vào/ra thanh ghi dữ liệu SPI
$0E ($2E) SPSR thanh ghi trạng thái SPI
$0D ($2D) SPCR thanh ghi điều khiển SPI
$0C ($2C) UDR vào/ra thanh ghi dữ liệu UART
$0B ($2B) USR thanh ghi trạng thái UART
$0A ($2A) UCR thanh ghi điều khiển UART
$09 ($29) UBRR UART Baud thanh ghi tốc độ
$08 ($28) ACSR so sánh thanh ghi điều khiển và thanh ghi trạng thái
$07 ($27) ADMUX ADC bộ đa hợp lựa chọn thanh ghi
$06 ($26) ADCSR ADC thanh ghi điều kiển và thanh ghi trạng thái
$05 ($25) ADCH thanh ghi dữ liệu cao ADC
$04 ($24) ADCL Thanh ghi dữ liệu thấp ADC
Chú ý: những vị trí dành riêng và không dùng không nhìn thấy trong bảng
Tất cả AT90S8535 I/Os và thiết bị ngoại vi được đặt trong không gian I/O. Vị
trí I/O được truy cập bởi lệnh IN và OUT .việc chuyển dữ liệu giữa 32 general-purpose
(mục đích tổng quát) làm việc của những thanh ghi và không gian I/O. Thanh ghi I/O
trong phạm vi địa chỉ $00-$1F được trực tiếp tiếp cận bits sử dụng lệnh SBI và CBI .
trong những thanh ghi này giá trị của bits đơn có thể được kiểm tra bằng lệnh SBIS và
SBIC. để cập lệnh tập hợp mục cho nhiều chi tiết hơn. Khi sử dụng những lệnh đặc
biệt vào/ra IN và OUT địac chỉ vào/ra $00-$3F phải được thực hiện. Khi địa chỉ thanh
ghi vào/ra như SRAM , $20 phải được thêm vào những địa chỉ này. Tất cả những
thanh ghi địa chỉ vào/ra tài liệu này cho thấy với địa chỉ SRAM trong dấu ngoặc.
Để thích hợp với những thiết bị tương lai, các bits dành riêng cần phải được viết 0
nếu truy cập
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 73
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Một số cờ trạng thái được xoá bằng cách viết một logic ‘1’ tới chúng. Ghi chú
rằng lệnh CBI và SBI sẽ có tác dụng trên tất cả các bits trong thanh ghi vào/ra, viết ‘1’
vào sau bất kỳ cờ đọc nào như là tập hợp, như vậy làm xoá cờ. Lệnh CBI và SBI chỉ
làm việc với thanh ghi $00 tới $1F.
Thanh ghi điều khiển thiết bị ngoại vi được giải thích trong những mục sau
THANH GHI TRẠNG THÁI – SREG
Thanh ghi trạng thái AVR (SREG) tại vị trí không gian I/O được định nghĩa như sau:
BIT 7 –I: Cho phép ngắt toàn cục
Cho phép ngắt toàn cục bit phải là tập hợp (một) cho ngắt để được cho phép.
Ngắt cho phép điều khiển riêng lẻ rồi được thực hiện trong những thanh ghi điều khiển
riêng biệt. Nếu thanh ghi cho phép ngắt toàn cục bị xoá, không có ngắt thì có thể
không phụ thuộc vào sự thiết đặt cho phép ngắt riêng lẻ. Bit –I bị xoá bởi phần cứng
sau khi một ngắt đã xuất hiện và được thiết lập bởi RETI để cho phép ngắt kế tiếp.
BIT 6 –T : Lưu trữ bản sao bit
Lệnh sao chép bit BLD (Bit LoaD) và BST (Bit Store) sử dụng T –Bit như
nguồn và đích cho hoạt động bit. Một bit từ một thanh ghi trong danh sách các thanh
ghi có thể sao chép vào trong T bởi lệnh BST và một bit trong T có thể sao chép cào
trong một bit trong một thanh ghi trong danh sách xcác thanh ghi bởi lệnh BLD.
Bit 5-H: half-carry flag (nửa – mang cờ)
Half-cary flag H cho biết một half-carry trong một vài thao tác số học. Thấy sự
mô tả thiết lập lệnh cho thông tin chi tiết.
Bit 4 –S :kí hiệu bit,
Bit –S luôn luôn được dành riêng hoặc ở trong cờ ngược N và bổ sung tràn bộ
nhớ cờ V. Thấy sự mô tả thiết lập lệnh cho thông tin chi tiết.
Bit 3 – V: hai lần bổ sung tràn bộ nhớ cờ V
Hai lần bổ sung tràn bộ nhớ cờ V hỗ trợ hai lần bổ sung số học. Thấy sự mô tả
thiết lập lệnh cho thông tin chi tiết.
Bit 2 –N : Cờ ngược
Cờ ngược cho biết một kết quả ngược từ thao tác số học hoặc logic. Thấy sự mô
tả thiết lập lệnh cho thông tin chi tiết.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 74
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Bit 1 –Z : cờ 0
Cờ 0 –Z cho biết một kết quả 0 từ một thao tác số học hoặc logic. Thấy sự mô
tả thiết lập lệnh cho thông tin chi tiết.
Bit 0 –C : cờ mang
Cờ mang –C cho biết một carry(mang) từ một thao tác số học hoặc logic. Thấy
sự mô tả thiết lập lệnh cho thông tin chi tiết.
Chú ý rằng trong thanh ghi trạng thái không tự động cất giữ khi một việc vào
ngắt thường trình và được lưu trữ khi trở lại một ngắt thường trình. Cái này phải được
điều khiển bởi phần mềm.
CON TRỎ NGĂN XẾP – SP
Con trỏ ngăn xếp AT90S8535 được thực hiện như hai thanh ghi 8-bit trong vị
trí không gian I/O $3E ($5E) and $3D ($5D). Như bộ nhớ dữ liệu AT90S8535 có vị trí
$25S, 10 bits đươch sử dụng.
Ngăn xếp con trỏ vào vùng ngăn xếp dữ liệu SRAM ở đầu chương trình con và
ngắt những ngăn xếp được định vị. Không gian ngăn xếp này phải được định nghĩa bởi
chương trình trước khi bất kỳ ngững sự gọi chương trình con nào được thực hiện hoặc
ngắt được cho phép. Ngăn xếp con trỏ phải được thiết đặt trỏ phía trên $60. Ngăn xếp
con trỏ được giảm bớt bởi 1 khi dữ liệu được đẩy lên trên ngăn xếp với lệnh PUSH và
nó là sự giảm bớt bởi 2 khi một địa chỉ được đẩy lên trên ngăn xếp với chương trình
con gọi và ngắt. Con trỏ ngăn xếp được tăng lên bởi 1 khi dữ liệu được bật ra khỏi
ngăn xếp với lệnh POP và nó được tăng lên bởi 2 khi một địa chỉ được bật ra từ ngăn
xếp với sự gọi chương trình con RET hoặc trở lại từ ngắt RET
XÁC LẬP LẠI VÀ NGẮT HANDLING
AT90S8535 cung cấp 16 nguồn ngắt khác nhau. Những ngắt và xác lập lại
vector riêng biệt từng cái có một vector chương trình riêng biệt trong không gian bộ
nhớ chương trình. Mọi ngắt được gán riêng lẻ làm cho bits phải được thiết lạp cùng
nhau với I-BIT trên thanh ghi trạng thái trong thứ tự để cho phép ngắt.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 75
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Những địa chỉ thấp nhất trong không gian bộ nhớ chương trình tự động được định
nghĩa như xác lập lại và ngắt vector. Danh sách đầy đủ của những vector được cho
thấy trong bảng 2. Danh sách cũng xác định rằng những mức quyền ưu tiên khác nhau
của ngắt. Thấp hơn địa chỉ, mức ưu tiên cao hơn.RESET có mức ưu tiên cao nhất và
tiếp theo la INTO ( the External Interrupt Request 0), ….
Bảng 2. Sự xác lập lại và các véc tơ ngắt(tiếp tục)
Số véctơ
Địa chỉ chương trình Nguồn Định nghĩa ngắt
13 $00C UART, UDRE UART-Thanh ghi dữ liệu trống
14
$00D
UART, TX UART, tx hoàn thành
15
$00E
ADC ADC, Quá trình chuyển đổi
hoàn thành
16
$00F
EE_RDY EEPROM sắn sàng
17
$010
ANA_COMP Máy so mẫu tương tự
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 76
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
CHƯƠNG 3. CÔNG NGHỆ CHIP PSoC
3.1 Chíp PSoC CY8C29x66
3.1.1 Chức năng
Chíp PSoC có các chức năng chủ yếu sau:
Bộ xử lý cấu trúc Harvard
• Bộ xử lý M8C với tốc độ 12M
• Hai bộ nhân 8x8, bộ tích luỹ 32 bit
• Công suất tiêu thụ thấp với tốc độ cao
• Dải điện áp hoạt động 4,75 - 5,25 V
• Dải nhiệt làm việc độ từ -40 đến +120 0C
Nguyên lý hoạt động (các khối trong PSoC)
12 khối tương tự PSoC Rail to Rail cung cấp
• Các bộ ADC 14 bit
• Các bộ ADC 9 bit
• Các bộ khuếch đại có thể lập trình được
• Các bộ so sánh và lọc lập trình được
16 khối số PSoC cung cấp
• Các bộ định thời, đếm 8 - 32 bit, bộ tạo độ rộng xung PWM
• Môđun CRC và PRS
• 4 đường UART song công
• Nhiều SPI chủ và tớ
• Có thể kết nối với tất cả các chân GPIO
Khối dao động
• Bộ dao động thạch anh bên trong 24 M sai số ±4%.
• Thạch anh 24 M với tuỳ chọn 32,768 kHz
• Tuỳ chọn bộ dao động ngoài cao nhất 24 MHz
• Dao động trong cho chế độ Watchdog và Sleep
Bộ nhớ bên trong mềm dẻo
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 77
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
• Bộ nhớ chương trình 32K byte với khả năng xoá/ghi 100 lần
• 2 KByte lưu dữ liệu SRAM
• Hệ thộng lập trình nối tiếp ISSP
• Cập nhật Flash cục bộ
• Chế độ bảo vệ mềm dẻo
Lập trình cấu hình các chân
• Dòng thấp 25 mA trên tất cả các chân GPIO
• Kéo lên, kéo xuống, trở kháng cao, dòng cao, hoặc chế độ điều khiển cực
máng mở trên tất cả các chân GPIO
• 12 lối vào tương tự trên các chân GPIO
• 4 chân ra 30 mA trên GPIO
• Cấu hình ngắt trên tất cả các chân GPIO
Tài nguyên khác
• I2C chủ, tớ, nhiều chủ với 400 kHz
• Bộ định thời Watchdog và Sleep
• Điện áp dò cấu hình sử dụng thấp
• Tích hợp mạch giám sát
• Độ chính xác điện áp tham chiếu trên chíp
Công cụ phát triển
• Phần mềm phát triển miễn phí (bộ thiết kế PSoC)
• Đầy đủ chức năng, bộ nạp ICE và lập trình
• Cấu trúc điểm ngắt phức hợp
• Bộ nhớ Trace 128 Kbyte
• Phức hợp sự kiện
• Các bộ soạn thảo C, ASM, liên kết
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 78
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
3.1.2 Sơ lược chức năng của PSoC
Hình 3.1. Sơ đồ khối của PSoC
Họ PSoC bao gồm một số dãy tín hiệu pha trộn với vi điều khiển tích hợp trên
chíp. Một số thiết bị được thiết kế để thay thế nhiều thành phần truyền thống trên hệ
thống cơ sở MCU với một thiết bị đơn chip có thể lập trình được. Thiết bị PSoC bao
gồm các khối logic tương tự và số và có thể lập trình kết nối được. Cấu trúc này cho
phép người sử dụng tạo ra cấu hình nguyên lý theo ý của khách hàng, điều này đáp
ứng yêu cầu của từng ứng dụng riêng lẻ. Ngoài ra, một CPU tốc độ nhanh, bộ nhớ lập
trình Flash, bộ nhớ dữ liệu SRAM, và cấu hình lại cổng vào/ra bao gồm các chân ra
tiện lợi và các khối.
Kiến trúc PSoC được minh hoạ trên hình 2.1 gồm có 4 vùng chính: lõi PSoC,
hệ thống số, hệ thống tương tự, tài nguyên hệ thống. Có thể cấu hình Bus toàn cục cho
phép tất cả các tài nguyên thiết bị phối hợp trong một hệ thống hoàn thiện. PSoC
CY8C29x66 có thể có 6 cổng IO để kết nối tới hệ thống số và tương tự, cung cấp truy
cập 16 khối số và 12 khối tương tự.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 79
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Hình 3.2. Sơ đồ cấu trúc của khối số
Phần lõi PSoC
Phần lõi PSoC là một mạnh hỗ trợ nhiều chức năng mạnh. Lõi bao gồm một
CPU, bộ nhớ, xung nhịp, và có thể cấu hình vào/ra đa năng GPIO.
Lõi CPU M8C là một bộ xử lý mạnh với tốc độ lên đến 12 MHz, cung cấp 2 M
lệnh trong một giây với lệnh 8 bit cấu trúc theo vi xử lý Harvard. CPU tận dụng một
bộ điều khiển ngắt với 25 vectơ ngắt, lập trình đơn giản với các sự kiện thời gian thực.
Thực hiện chương trình là theo thời gian và sử dụng chế độ bảo vệ bao gồm bộ định
thời Sleep và Watchdog (WDT).
Bộ nhớ bao gồm 32 KB bộ nhớ chương trình và 2 KB bộ nhớ SRAM. Bộ nhớ
chương trình Flash tận dụng 4 mức bảo vệ trên các khối 64 byte, cho phép chế độ bảo
vệ phần mềm theo ý khách hàng.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 80
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Thiết bị PSoC hợp nhất bên trong một cách mềm dẻo tạo ra xung nhịp, bao gồm
24 MHz IMO (bộ dao động chính bên trong) chính xác đến 4 % trong dải nhiệt độ và
điện áp. Một bộ dao động công suất thấp 32 kHz ILO (bộ dao động bên trong với tốc
độ thấp) được sử dụng cho bộ định thời Sleep và WDT. ECO (bộ dao động thạch anh
bên ngoài 32,768 KHz) được sử dụng cho đồng hồ thời gian thực RTC và có thể chọn
một bộ phát tuỳ chọn hệ thống xung nhịp thạch anh chính xác 24 MHz sử dụng một
PLL (vòng bám pha). Xung nhịp, cộng với bộ chia tần (như một tài nguyên hệ thống),
cung cấp một cách mềm dẻo những yêu cầu về thời gian trong chíp PSoC.
Các chân đa năng GPIO của PSoC cung cấp việc kết nối tới CPU, tài nguyên số
và tương tự của thiết bị. Chế độ hoạt động từng chân của phần cứng có thể chọn từ 8
tuỳ chọn, cho phép sự mềm dẻo hơn trong giao diện bên ngoài. Mỗi chân có khả năng
tạo ra một ngắt hệ thống ở mức cao, mức thấp, và thay đổi từ lần đọc cuối nhất.
Hệ thống số
Hệ thống số bao gồm 16 khối số PSoC. Mỗi một khối bao gồm 8 bit, chúng có
thể được sử dụng đơn hoặc kết hợp với các khối khác để tạo thành 8, 16, 24, và 32 bit,
đây gọi là sử dụng các mô đun tham chiếu. Cấu hình các ngoại vi số bao gồm:
o Các PWM (8 đến 32 bit)
o Các PWM với thời gian trễ (8 đến 32 bit)
o Bộ đếm (8 đến 32 bit)
o Bộ định thời (8 đến 32 bit)
o UART 8 bit với chọn lựa chẵn lẻ (đến 4 bộ)
o SPI chủ và tớ (đến 4 cho mỗi bộ)
o I2C tớ và đa chủ (1 có sẵn như một nguồn tài nguyên hệ thống)
o Bộ kiểm tra lỗi CRC/ bộ tạo ra dữ liệu dư thừa để kiểm tra lỗi CRG (8
đến 32 bit)
o Bộ tạo quá trình giả ngẫu nhiên (8 đến 32 bit)
Các khối số có thể kết nối tới bất kỳ chân GPIO thông qua một dãy của Bus
toàn cục để có thể hướng bất kỳ một tín hiệu tới một chân bất kỳ nào. Các Bus cho
phép hợp kênh tín hiệu và biểu diễn dưới sự hoạt động logic. Cấu hình này là do người
thiết kế từ rằng buộc của nguyên lý điều khiển cố định.
Các khối số được cung cấp trong 4 hàng. Số của các khối thay đổi bởi họ thiết
bị PSoC. Điều này cho phép người sử dụng chọn lựa một cách thuận lợi nhất tài
nguyên hệ thống cho từng ứng dụng.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 81
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Hệ thống tương tự
Hệ thống tương tự bao gồm 12 khối cấu hình, mỗi một khối bao gồm một mạch
thuật toán cho phép tạo ra sự phối hợp tín hiệu tương tự. Nguyên lý tương tự rất mềm
dẻo và có thể phù hợp với từng ứng dụng cụ thể theo yêu cầu của khách hàng. Một số
ngoại vi tương tự PSoC có thể được cấu thành như sau:
o Các bộ chuyển đổi tương tự sang số (lớn nhất là 4, với 6 đến 14 bit, có
thể chọ lựa phương pháp tăng ích, Delta Sigma, và SAR)
o Các bộ lọc (2, 4, 6, hoặc 8 cực thông dải, thông thấp, thông hẹp)
o Các bộ khuếch đại (lớn nhất là 4, với sự chọn hệ số khuếch đại 48x)
o Các bộ khuếch đại phối âm (lớn nhất 2, với sự chọn lựa hệ số khuếch đại
93x)
o Các bộ so sánh (lớn nhất là 4, với 16 sự lựa chọn ngưỡng)
o Các bộ chuyển đổi số sang tương tự DAC (lớn nhất là 4, với 6 đến 9 bit)
o Các bộ biến đổi ADC
o Dòng điều khiển lối ra cao (4 với 40 mA như một tài nguyên lõi PSoC)
o Tham chiếu 1.3V (như một tài nguyên hệ thống )
o Bộ quay số DTMF
o Các bộ điều chế
o Các bộ dò đỉnh
o Một số cấu hình khác có thể thực hiện được
Các khối tương tự được trình bày ở hình 3.3:
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 82
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Hình 3.3. Sơ đồ khối tương tự
Hệ thống tài nguyên khác
Tài nguyên hệ thống, một số cái đã có trong danh mục trước đây, cung cấp
thêm khả năng hoàn thiện hệ thống hơn. Tài nguyên cộng thêm bao gồm một bộ nhân,
bộ đo, công tắc nhấn, bộ dò điện áp thấp, và reset nguồn điện. Khai báo vắn tắt một số
tài nguyên tiêu biểu được cung cấp ở dưới đây.
o Bộ chia xung nhịp số được cung cấp 3 sự lựa chọn tần số đồng hồ cho
các ứng dụng. Các đồng hồ có thể hướng đến cả hai hệ thống số và
tương tự. Các đồng hồ cộng thêm có thể được tạo ra bằng cách sử dụng
các khối PSoC số như là các bộ chia đồng hồ
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 83
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
o Hai bộ nhân cứng (MAC) cung cấp bộ nhân nhanh 8 bit với tích luỹ 32
bit để giúp cho cả hai bộ tính toán thông thường và bộ lọc số.
o Bộ đo cung cấp một phần cứng bộ lọc tuỳ thích cho tín hiệu số, các ứng
dụng xử lý bao gồm việc tạo ra bộ chuyển đổi tương tự số Delta Sigma
ADC.
o Mô đun I2C cung cấp truyền thông 100 và 400 kHz thông qua 2 đường
dây. Tơ, chủ, và chế độ đa chủ được hỗ trợ tất cả.
Ngắt bộ dò điện áp thấp (LVD) có thể báo hiệu cho ứng dụng mức sụt điện áp,
trong mạch POR (Power On Reset) tiên tiến loại trừ cần thiết cho hệ thống giám sát.
Một điện áp tham chiếu bên trong cung cấp một tham chiếu tuyệt đối cho hệ thống
tương tự, bao gồm các bộ ADC, DAC
Các đặc tính của thiết bị PSoC
Phụ thuộc vào đặc tính thiết bị PSoC của người sử dụng, hệ thống số và tương
tự có thể có 16, 8 hoặc 4 khối số và 12, 6 hoặc 3 khối tương tự. Bảng ở dưới cho biết
tài nguyên của từng nhóm thiết bị PSoC.
Nhóm thiết bị
PSoC
Chân
vào/ra
số (lớn
nhất)
Các
dòng
khối số
Khối
số
Lối vào
tương
tự
Lối ra
tương
tự
Cột
khối
tương
tự
Khối
tương
tự
RAM
trong
Bộ nhớ
Flash
bên
trong
CY8C29x66 44 4 16 12 4 4 12 2 KB 32 KB
CY8C27x43 44 2 8 2 4 4 12 256Byte 16 KB
CY8C24x23 24 1 4 12 2 2 6 256Byte 4 KB
CY8C24x23A 24 1 4 12 2 2 6 256Byte 4 KB
CY8C22x13 16 1 4 8 1 1 3 256Byte 2 KB
CY8C21x34 28 1 4 28 0 2 4a 512Byte 8 KB
CY8C21x23 16 1 4 8 0 2 4a 256Byte 4 KB
3.2. Ngôn ngữ lập trình cho PSoC
Sau khi thiết kế phần cứng của hệ thống sau bằng chương trình PSoC Designer,
chúng ta bắt đầu tiến hành lập trình cho hệ thống. Để lập trình cho chip PSoC, chúng
ta có thể sử dụng 1 trong 2 ngôn ngữ là C và Assembly. Nhưng trên thực tế để làm cho
hệ thống linh hoạt và dễ kiểm soát hơn, người ta thường kết hợp cả hai ngôn ngữ này.
Ngôn ngữ C cho PSoC cũng gần giống với ngôn ngữ C bình thường, nhưng nó
phải hỗ trợ lập trình cấu trúc cho PSoC. Vì vậy để viết được tốt ngôn ngữ này chúng ta
phải tìm hiểu kỹ phần: PSoC Designer C Language Compiler User Guide
Còn Assembly giúp chúng ta viết chương trình đáp ứng các điều khiển thời gian
thực và điều khiển các ngắt. Để lập trình được ngôn ngữ này, chúng ta phải am hiểu
sâu về phần cứng của PSoC. Chúng ta có thể đọc phần hướng dẫn sử dụng của nhà sản
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 84
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
xuất để có thể hiểu và lập trình được: PSoC Designer Assembly Language User
Guide.
Trong đề tài này tôi không đi sâu vào miêu tả chi tiết từng loại ngôn ngữ lập
trình. Chúng ta có thể xem và được hỗ trợ trực tuyến trên trang Web của nhà sản xuất:
Như vậy để thiết kế được một chíp chuyên dụng PSoC, chúng ta phải tiến hành
một số bước sau:
• Thiết kế phần cứng cho hệ thống bằng PSoC Designer IDE
• Viết chương trình điều khiển hệ thống băng Assembly hay C
• Nạp chương trình điều khiển vào chip chuyên dụng PSoC ICE
• Chạy thử và dò lỗi chương trình bằng chức năng Debug của PSoC Designer
3.3 Giới thiệu những nét cơ bản về IDE
• Giới thiệu.
• Cài đặt PSoC Designer.
• Sử dụng IDE (Integrated Development Environment).
• Tạo một Project.
• Phần mềm PSoC Designer để lập trình hệ thống, cài chương trình điểu khiển
cho loại chip PSoC
• Phần mềm thiết kế được xây dựng trên cơ sở hướng đối tượng với cấu trúc
module hóa
• Hướng dẫn về môi trường phát triển của phần mềm sẽ giúp bạn trong việc
cấu hình, biên soạn mã nguồn, biên dịch, xây dựng và gỡ lỗi trong hệ thống
của bạn.
• Giới thiệu.
Cài đặt PSoC Designer.
• Sử dụng IDE (Integrated Development Environment).
• Tạo một Project.
• Yêu cầu hệ thống.
• Phần mềm yêu cầu.
• Cài đặt.
• Cập nhật những project đã có
Yêu cầu hệ thống:
Dưới đây là những đặc điểm kỹ thuật của hệ thống máy tính cần được quan tâm
khi chạy PSoC Design
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 85
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Phần mềm yêu cầu
CóCóCổng song song EPP hoặc LPT
CóCóỔ CD-ROM
1280x1024 1024x768Độ phân giải đồ họa(16 bit)
512MB 256MBRAM
1GHz500MHzTốc độ xử lý
Giới thiệu Tối thiểuYêu cầu của hệ thống
Danh sách các phần mềm được quan tâm để chạy PSoC Designer:
+ Window(R) NT4.x (SP6), 2000, or XP (SP1).
+ Microsoft Internet Explorer 6.x(SP1) với MSXML Parser V.3.0 hoặc cao
hơn.
+ Adobe Acrobat Reader.
+ Adobe SVG Viewer 3.0.
Cài Đặt
Để cài đặt PSoC Designer, bạn thực hiện qua các bước sau:
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 86
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 87
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Sử Dụng IDE
Kiểu file và đuôi mở rộng.
Quản lý dự án.
Thiết lập cho dự án.
Những tùy chọn cho dự án.
Kiểu File và Đuôi Mở Rộng
Khi bạn tạo một dự án mới, một thư mục gốc gốc với 3 thư mục con sẽ được
tạo, với thư mục gốc có tên là tên của dự án. Thư mục còn lại là Lib(thư viện), obj(đối
tượng), output(các tệp được tạo trong quá trình xây dựng dự án).
Một số định file được sử dụng với phần mềm PSoC Designer: .a, .asm, .c, .cfg,
.dbg, .h, .hex, .inc, .lis, .lst
Hệ thống file của dự án sẽ có dạng như sau.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 88
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Quản lý dự án
PSoC Designer bao gồm 3 hệ thống con như sau: Device Editor, Application
Editor, và Debugger.
Device Editor
Bao gồm các menu và thanh công cụ chính, một khung các lựa chọn của người
dùng, một khung sơ đồ khối các module, khung Resource meter, khung thông số và
tính năng của các module đã lựu chọn…
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 89
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Application Editor
Để chuyển sang Application Editor bạn click chuột vào
Trong Application Editor bạn có thể nhìn thấy các file của dự án thông qua cây
source, cửa sổ file nguồn đang được mở, cửa sổ trạng thái đầu ra.
Debugger
Nếu bạn trong hệ thống con Debugger, bạn sẽ nhìn thấy những cửa sổ hoạt
động như trong trình biên tập ứng dụng cộng với thanh ghi CPU(CPU register),
RAM/Bank/Flash thanh ghi dữ liệu, và nhiều cửa sổ biến quan sát(watch variable).
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 90
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Thiết Lập Cho Dự Án
Trong hộp thoại Project Settings bạn
có thể thay đổi những đặc tính trình biên
dịch PSoC Designer C.
Thẻ Compiler.
Thẻ Device Editor.
Thẻ Linker.
Thẻ Debugger.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 91
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Thẻ Compiler
Trong thẻ này bạn có thể lựa chọn trình biên dịch C, định nghĩa Macro, tối ưu hóa tốc
độ cho những hàm toán học, tố ưu hóa luồng dữ liệu trình biên dịch , phân trang RAM,
nén mã.
Cho phép điều chỉnh các ngắt phát sinh của mỗi module.
Lựa chọn kiểu cấu hình khởi tạo(Loop/Direct write).
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 92
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Thẻ Linker
Với trình biên dịch C đã chọn ở thẻ Compiler bạn có thể xác định lại ví trí vùng
văn bản, liên kết mã nguồn từ các project khác, thêm các thư viện khác.
Thẻ Debugger
Thiết đặt cổng gỡ lỗi, những cổng nào đã được kết nối thì sẽ được liệt kê trong trường
ICE connected to
Bạn sẽ phải thay đổi cổng mặc định,LTP1, nếu ICE xung đột với một máy in
hay cổng khác của một thiết bị độc lập nào đó hoặc nếu bạn đã cài đặt một card mở
rông PCI/PCMCIA
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 93
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Các Tùy Chọn
Builder
Compiler
Debugger
Device Editor
Editor
Toolbars
Desgin Rule Checker
Builder
Dấu kiểm Use verbose build message để nhận các thông điệp lỗi đã dự báo
trước, tích chọn để kích hoạt khả năng này.
Compiler
Lựa chọn trình biên dịch.
Nhập thông tin bản quyền sử dụng của người dùng.
Quy định sử dụng phần mềm.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 94
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Debugger
- Các thiết đặt để tìm lỗi với 3 lựa chọn
+PC
+ PC/ thanh ghi
+PC/Timestamp
-Thiết đặt cổng gỡ lỗi .
Device Editor
Thiết đặt cho Design Rule Checker được thực thi tự động hay không.
Cho phép điều hướng các thông tin.
Editor
Thiết đặt các tùy chọn về lưu trữ của project. Cho phép tự động load các file nguồn,
thư viện… hay không.
Thiết đặt về cửa sổ làm việc khi project được load.
Toolbars
Lựa chọn các công mà bạn muốn hiển thị hay ẩn đi.
Build MiniBar
Debug MiniBar
Device Editor MiniBar
User Module MiniBar
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 95
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Download MiniBar
Standard
SubSystem MiniBar
Text Editor MiniBar
Design Rule Checker
Chỉ định cấp độ để thực thi Design Rule Checker.
Mức thang từ 1 đến 5.
Cấp độ càng nhỏ thì càng có quy tắc nghiêm ngặt.
Tạo Một Project
Tạo project.
Các phương thức để tạo project.
Thư mục sao lưu project.
PSoC Designer cung cấp một thuật sĩ để chỉ dẫn bạn tạo một project.
1.Click vào New project
2.Lựa chọn phương thức để tạo
1.Create New Project
2.Clone Project
3.Create Design-Based Project
3.Đặt tên cho project mới và xác định vùng lưu trữ
4.Click Next.
5.Lựa chọn chip để sử dụng.
6.Lựa chọn ngôn ngữ để lập trình
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 96
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Tạo project theo cách thông thường.
Tạo project theo một project đã có sẵn.
Tạo project với những thiết kế cơ sở.
Thư Mục Sao Lưu Project
PSoC Designer luôn duy trì một thư mục sao lưu dự phòng cho project trong
thư mục của project với những file đã được chuyển đến bên trong cây nguồn.
Lưu lại những file với phiên bản mới nhất, được lưu lần cuối cùng.
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 97
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
TÀI LIỆU THAM KHẢO
1. Họ vi điều khiển 8051 - Tống Văn On
2. Họ vi điều khiên AVR - Ngô Diên Tập
3. 8-bit Microcontroller with 8K Bytes In-System Programmable Flash AT90S8535
AT90LS8535
4. 8-Bit Microcontroller with 2K Bytes Flash AT89C2051
5. 8-bit Microcontroller with 4K Bytes Flash AT89C51
6. 8-bit Microcontroller with 20K Bytes Flash AT89C55WD
7. FlashFlex51 MCU SST89C54 / SST89C58
8. Automotive CY8C29466 and CY8C29666
9. PSoC Designer PSoC Programmer User Guide
10. PSoC Designer C Language Compiler User Guide
11. PSoC Designer Assembly Language User Guide
12. PSoC Designer ICE User Guide
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 98
Tài liệu tham khảo cho môn Vi xử lý Các hệ vi xử lý thế hệ mới
Bộ môn Công nghệ điều khiển tự động Khoa CNTT - ĐHTN 99
Các file đính kèm theo tài liệu này:
- Các hệ vi xử lý mới.pdf