Kinh nghiệm sử dụng keil c để lập trình cho x51

37 423 2
Kinh nghiệm sử dụng keil c để lập trình cho x51

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Kinh nghiệm sử dụng Keil C để lập trình cho x51 Introduction • MCU 51 loại vi điều khiển bit, giá thành thường rẻ loại vdk khác, dể sử dụng, tài liệu nhiều sử dụng • Có nhiều công cụ để lập trình cho x51 Trong Keil C công cụ mạnh, hổ trợ nhiều dẫn xuất x51, công cụ debug mạnh, sinh mã có hiệu suất cao Topics of Discussion • Ôn lại ngôn ngữ lập trình C x51 • Giới thiệu sơ lược Keil C • Tạo project để lập trình ASM Keil C • Tạo project để lập trình C Keil C Ôn lại ngôn ngữ lập trình C x51 • Hai tài liệu ngắn gọn ngôn ngữ C tiếng Anh bạn download Mong bạn đọc hết tài liệu này, giúp bạn hiểu rõ vài vấn đề hóc búa C trỏ nhớ v.v… • Các bạn nên ôn lại vấn đề x51 tập lệnh, timer, serial port, ngắt • Nếu bạn tự tin trình độ lập trình C hiểu biết x51 bỏ qua phần Ôn lại ngôn ngữ lập trình C x51 • Ôn lại chút C : – Header: • Tệp header C tệp tin chứa số, prototype hàm, typedef v.v… • #include • #include “tên file header” • Cách trình biên dịch tìm thư viện nó, cách thứ compiler tìm thư mục chứa project đường dẫn bạn cung cấp Vd: #include “C:\vd.h” trình biên dịch tìm file vd.h ổ C Ôn lại ngôn ngữ lập trình C x51 • Ôn lại chút C : – Define • Định nghĩa số macro • #define MAX 100 • #define MIN(a,b) a[...]... thiệu sơ lư c về Keil C • Để c bản Evaluation c a Keil C bạn vào trang web điền thông tin rồi download về • Nếu bạn c license code c a keil C bạn hãy nhập vào như 2 hình sau đây 13 14 6/16/2009 e13k@e13k.eu.org 15 Giới thiệu sơ lư c về Keil C • Điểm kh c biệt c a Keil C với C chuẩn – Kiểu dữ liệu mới: • bit : khai báo 1 biến kiểu bit, c c biến kiểu bit đư c lưu trữ ở vùng nhớ định địa chỉ bit – bit... unsigned char code code_constant; • data: vùng nhớ dữ liệu (RAM) trong chip truy c p tr c tiếp (128 byte đầu) C thời gian truy c p nhanh nhất nên thường đư c sử dụng để khai báo biến – unsigned char data fast_variable; – Chú ý ko thể khai báo hàm kiểu data 18 Giới thiệu sơ lư c về Keil C • Điểm kh c biệt c a Keil C với C chuẩn – Khai báo vùng nhớ c a biến: • bdata: Khai báo 1 biến 8-bit (ho c cao hơn)... khởi tạo trư c Vd c u lệnh sau không hợp lệ » data char tmp=24 _at_ 0x30;// ko hợp lệ 20 Tạo 1 project để lập trình bằng ASM trên Keil C • Bạn xem c c bư c ở c c slide sau đây 21 22 23 24 25 26 27 28 29 30 31 32 33 Tạo 1 project để lập trình bằng C trên Keil C • C c bư c hoàn toàn tương tự chỉ kh c ở c c slide sau đây: 34 35 36 ... 0x80; – Chú ý sfr không thể khai báo bên trong hàm nhé bạn • sfr16: định nghĩa 1 thanh ghi sfr 16 bit – sfr16 name = address; – sfr16 T2 = 0xCC; /* Timer 2: T2L 0CCh, T2H 0CDh */ – Chú ý sfr16 không thể khai báo bên trong hàm 17 Giới thiệu sơ lư c về Keil C • Điểm kh c biệt c a Keil C với C chuẩn – Khai báo vùng nhớ c a biến: • code: vùng nhớ chương trình (thường là ROM) Dùng để lưu trữ c c hằng số... địa chỉ bit (0x20->0x2F) – unsigned char bdata bdata_var; – Chú ý ko thể khai báo hàm kiểu data • idata: vùng nhớ dữ liệu (RAM) trong chip truy c p gián tiếp Vùng nhớ idata bao gồm vùng nhớ data và 128 byte cao truy c p gián tiếp trong 8052 (c i này đ c trong user guilde c a c5 1) T c độ truy c p chậm hơn data – unsigned char idata variable; 19 Giới thiệu sơ lư c về Keil C • Điểm kh c biệt c a Keil C. .. thiệu sơ lư c về Keil C • Ôn lại một chút về C – Từ khóa volatile: nói nôm na 1 biến volatile là biến mà nội dung nó bị thay đổi bởi phần c ng chứ không phải do bản thân chương trình C i này c ng không quan trọng lắm bạn c thể đ c user guilde c a keil C để tìm hiểu thêm • volatile unsigned char reg1; – Từ khóa static: khai báo biến tĩnh, biến tĩnh khỏi tạo 1 lần và giữ nguyên giá trị c a nó sau mỗi... Keil C với C chuẩn – Khai báo vùng nhớ c a biến: • Từ khóa _at_: chỉ định địa chỉ mà biến đư c lưu trong bộ nhớ – « memory_type » type variable_name _at_ constant; – data char tmp _at_ 0x30;// Khai báo biến tmp kiểu char trong vùng nhớ data tại địa chỉ 0x30 – Chú ý không thể dùng _at_ với hàm, biến kiểu bit, biến khai báo với _at_ không thể khởi tạo trư c Vd c u lệnh sau không hợp lệ » data char tmp=24... gọi hàm nếu nó đư c khai báo trong hàm • static data-type name « = value »; 11 Giới thiệu sơ lư c về Keil C • Ôn lại một chút về C – Từ khóa extern: Khai báo 1 biến toàn c c mà biến này đã đư c định nghĩa trong một modun kh c • extern unsigned char my; – Từ khóa register: khai báo biến mà biến đó đư c lưu trong thanh ghi • register data-type name « = value »; • register unsigned char fastVar = 10;... value »; – Vd: bit myFlag = 1; – Chú ý không thể khai báo con trỏ và mảng kiểu bit • sbit: Khai báo bit trong c c thanh ghi SFR – – – – sbit name = sfr-name ^ bit-position; sbit name = sfr-address ^ bit-position; sbit name = sbit-address; Vd: sbit output0 = P1^0;sbit output1 = 0x90^1; sbit output2 = 0x92; 16 Giới thiệu sơ lư c về Keil C • Điểm kh c biệt c a Keil C với C chuẩn – Kiểu dữ liệu mới: • sfr ... x51, c ng c debug mạnh, sinh mã c hiệu suất cao Topics of Discussion • Ôn lại ngôn ngữ lập trình C x51 • Giới thiệu sơ lư c Keil C • Tạo project để lập trình ASM Keil C • Tạo project để lập trình. ..Introduction • MCU 51 loại vi điều khiển bit, giá thành thường rẻ loại vdk kh c, dể sử dụng, tài liệu nhiều sử dụng • C nhiều c ng c để lập trình cho x51 Trong Keil C công c mạnh, hổ... #include “tên file header” • C ch trình biên dịch tìm thư viện nó, c ch thứ compiler tìm thư m c chứa project đường dẫn bạn cung c p Vd: #include C: vd.h” trình biên dịch tìm file vd.h ổ C Ôn

Ngày đăng: 14/11/2015, 20:37

Tài liệu cùng người dùng

Tài liệu liên quan