... form. You
IBM PC Assembly Language Tutorial 4
IBM PC Assembly Language Tutorial 27
65399 '** DONE - PRESS ENTER TO RETURN TO MENU **
PC Assembly Language Tutorial 27
65399 '** DONE ... the system may do too much for you. System support for the key-
board is an example. At the hardware level, all 83 keys on the keyboard
send unique codes when they are pressed, held down, and released. ... comment or for more than 15 instructions or
IBM PC Assembly Language Tutorial 9
IBM Personal Computer Assembly
Language Tutorial
Joshua Auerbach
Yale University
Yale Computer Center
...
... Giới thiệu về CCS ?
CCS là trình biên dịch lập trình ngôn ngữ C cho Vi điều khiển PIC của hãng Microchip.
Chương trình là sự tích hợp của 3 trình biên dich riêng biết cho 3 dòng PIC khác nhau đó
là:
‐ PCB cho dòng PIC 12‐bit opcodes
‐ PCM cho dòng PIC 14‐bit opcodes
‐ ... Một số ví dụ cho lập trình CCS
Với mục tiêu giúp người đọc nhanh chóng lắm bắt được cách lập trình C cho PIC thông
qua chương trình dịch CCS. Dưới đây tôi giới thiệu một vài bài lập trình đơn giản cho PIC,
các bài mẫu này dựa theo tài liệu tutorial của Nigel như quét LED, LED 7 thanh, LCD, bàn
phím…, cách dùng các giao tiếp của PIC để giao tiếp với thiết bị ngoại vi như Real Time IC,
ADC, EEPROM…
• Yêu cầu về phần cứng tối thiểu cần có để thực hành:
‐ PIC1 6F877A ( hoặc 16F876A hay 16F88) = 50K (Tốt nhất là PIC1 6F877A)
‐ ... lựa chọn
khác như chọn tần số thạch anh dao động, thiết lập các bit CONFIG nhằm thiết
lập
chế độ hoạt động cho PIC.
Hình 2.1: Tab General
‐ Device: Liệt kê danh sách các loại PIC 12F, 16F, 18F… Ta sẽ chọn tên Vi điều khiển
PIC mà ta sử dụng trong dự án. Lấy ví dụ chọn PIC1 6F877A
‐ Oscilator Frequency: Tần số thạch anh ta sử dụng, chọn 20 MHz (tùy từng loại)
‐...
...
La chn PIC:
- Mi hc: PIC1 6F628A hoc PIC1 6F88
- Hc tng hp: PIC1 6F877A
- Lm ti: PIC1 6F876A
- Cn mnh hn: PIC1 8F458
Cỏc loi trờn u cú th dựng PG2C v IC-PROG 1.05D
- iu khin ng c: PIC1 8F4331, ... dựng bt u thc hnh v PIC. Hu ht cỏc
tutorial mi u bt u chn PIC1 6F628A. Tuy nhiờn, hin nay dũng PIC1 6F88 mi ra i, cng
nh s ra i ca PIC1 6F628A, PIC1 6F88 cú nhiu chc nng hn PIC1 6F628A, giỏ c khụng ... núi PIC1 6F628A tng thớch PIC1 6F84A v
PIC1 6F88 tng thớch vi hai loi cũn li. Cú ngha l trong cỏc ng dng ca PIC1 6F84A, khi thay
i bng PIC1 6F88, hay PIC1 6F628A u c.
Tt nhiờn, 3 loi vi dũng PIC...
... trình biên dịch MPASM để dịch những gì chúng ta
đã viết trong PICtutorial_intro.asm thành PICtutorial_intro.HEX để chuẩn bị nạp vào
PIC.
Hình 2.2 : Trình dịch MPASM trên Windows
Sau khi dịch xong, ... tạo ra một loạt các file khác ngoài file PICtutorial_intro.asm
ban đầu như hình sau:
nguyenvanbientbd47@gmail.com
Chúng ta sẽ lưu lại file trên là PICtutorial_intro.asm
Sau đó, chúng ta sẽ dùng ... MPASM, CCS C và HT PIC để
hướng dẫn các bạn. Vì vậy, chúng tôi tạm thời gác lại các ngôn ngữ khác là C17, C18
(dùng cho PIC1 8F), C30 (dùng cho dsPIC), cũng như một số ngôn ngữ PICBasic,
hoặc...
...
Chương 2: Vi điều khiển PIC
Giới thiệu chung
Trong chương này chúng ta sẽ đi tìm hiểu về Vi điều khiển PIC, mà cụ thể là dòng Vi
điều khiển PIC1 8F4331. Tại sao lại chọn PIC1 8F4331, điều này ... ra khi
bắt đầu học PIC thì bạn có thể chọn bất cứ con PIC nào để tìm hiểu, bởi hầu hết các
dòng PIC đều có cấu trúc phần cứng về cơ bản là giống nhau, và tùy từng dòng PIC mà
sẽ có những tính ... trình ứng dụng. Sau đó sẽ tìm hiều về những tính năng
riêng của PIC1 8F4331 và PIC1 8F4550
- Kiến trúc RISC của vi điều khiển PIC
PIC được tổ chức phần cứng theo kiến trúc Harvard, và tập lệnh...
... tiên chúng ta xem ví dụ sau:
Giả
sử chúng ta cần xuất dữ liệu ra màn hình LCD với dãy chữ : PIC_ Tutorial . Ở
đây, chúng ta không cần quan tâm đến hoạt động của LCD và hình thức xuất dữ liệu ... dữ liệu và bộ nhớ chương trình (Kiến trúc Harvard)
- Con trỏ chương trình
- Tổ chức bộ nhớ của PIC (các BANK)
- Khái niệm Stack
1) Giới thiệu về kỹ thuật bảng
Để hiểu về kỹ thuật bảng, ... phần kiến trúc
Harvard và kiến trúc Von Neumann. Tuy nhiên, chúng ta sẽ nhắc lại rằng, đối với PIC
dòng Mid Range, bộ nhớ chương trình có 14 bit cho mỗi lệnh, vì vậy, cho dù các bạn
thực hiện...
... Switch, cái này thật sự cần thiết, vì khi bạn
ấn Switch nó sẽ bị rung, lúc đóng lúc hở và con Pic có thể hiểu nhầm rằng bạn đã ấn
Switch rất nhiều lần. Với mạch chống rung này, khi bạn ấn Switch ... nói cho con Pic biết cái gì sẽ làm khi Interrutp xảy
ra, trong trường hơp này Interrupt của chúng ta sẽ là cái Switch.
Chúng ta muốn con Pic cộng thêm 1 vào biến COUNT mỗi lần cái Switch đóng ... file thanh ghi (register file) được ánh xạ vào PIC1 6F84.
PIC được chia làm 2 phần, Bank0 và
Bank1.
Bank1 dùng để điều khiển các hoạt động
của PIC, ví dụ như nói cho nó biết những
bit nào...