1. Trang chủ
  2. » Luận Văn - Báo Cáo

cấu trúc while, do while, for, switch

33 37 0

Đ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

Thông tin cơ bản

Tiêu đề Cấu Trúc While, Do While, For, Switch
Định dạng
Số trang 33
Dung lượng 368,31 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Khai báo các biến toàn cục 3.. Khai báo nguyên mẫu các hàm 4.. Xây dựng các hàm và chương trình chính... * Ví dụ:#include #include #define Led1 P1_0 Unsigned char code Led_arr[3]; Unsign

Trang 1

Câu 1

1 Nêu c u trúc m t chấ ộ ương trình vi t b ng C đ y đ trong MikroC và KeilC? ế ằ ầ ủ

2 Hàm là gì? Nêu cách s d ng hàm trong C? ử ụ

Câu 2

1 Nêu các c u trúc : While, Do while, for, switch ? ấ

2 S khác nhau gi a While và do while? ự ữ

3 Trình bày v chu n giao ti p onewire g a vi đi u khi n và Ds1820? ề ẩ ế ữ ề ể

Câu 3

1 Nêu các phép d ch bit trong C ? ị

2 Vi t chế ương trình Led đu i nhau PORT1 dùng pháp d ch bit? ổ ị

1 Phương pháp quét Led 7 thanh?

2 Cách thay đ i th i gian đ m tr trong chổ ờ ế ễ ương trình Led 7 seg?

3 Vi t chế ương trình đi u khi n đ m t 0=>10=>20=> … ề ể ế ừ

=>500=>490=>480=>470=>…=> 0… và th c hi n l i? vẽ l u đ thu t toán? ự ệ ạ ư ồ ậ

4 Gi i thích t ng câu l nh trong chả ừ ệ ương trình?

Trang 2

Câu 7:

1 L c thông th p là gì? ọ ấ

2 Phương pháp tăng đ chính xác c a phép đo nhi t đ , phép đo dòng đi n, ộ ủ ệ ộ ệ

đi n áp, ADC dùng l c thông th p, đ n gi n nh t là vi c l y trung bình c ng ệ ọ ấ ơ ả ấ ệ ấ ộ

c a các l n trích m u trong 1 th i gian nào đó t m 500ms Nêu thu t toán và ủ ầ ẫ ờ ầ ậcách th c hi n trong C? ự ệ

3 Vi t chế ương trình hi n c nh báo quá nhi t n u 20<nhi t đ ho c nhi t để ả ệ ế ệ ộ ặ ệ ộ

>40 đ C? ộ

4 Gi i thích t ng câu l nh? ả ừ ệ

Câu 8:

1 Ng t là gì? Trình bày các lo i ng t trong 8051? ắ ạ ắ

2 Phương pháp vi t 1 chế ương trình có s d ng ng t trong MikroC và KeilC? ử ụ ắ

3 Vi t chế ương trình đ m s b m nút s d ng ng t ngoài và hi n th lên Led ế ố ấ ử ụ ắ ể ị

7 thanh? L u đ thu t toán? ư ồ ậ

4 Gi i thích t ng câu l nh? ả ừ ệ

Bài Làm : Câu 1:

1 C u trúc c a m t ch ấ ủ ộ ươ ng trình vi t b ng ngôn ng C: ế ằ ữ

* Cấu trúc

1 Khai báo chỉ thị tiền xử lý

2 Khai báo các biến toàn cục

3 Khai báo nguyên mẫu các hàm

4 Xây dựng các hàm và chương trình chính

Trang 3

* Ví dụ:

#include<regx51.h>

#include<string.h>

#define Led1 P1_0

Unsigned char code Led_arr[3];

Unsigned char data dem;

Unsigned int xdata X;

Void delay(unsigned int n);

bit kiemtra(unsigned int a);

void delay(unsigned int n)

Khai báo biến toàn cục

Khai báo nguyên mẫu hàm

Xây dựng các hàm và chươngtrình chính

Trang 4

Bit kiemtra(unsigned int a){

Khai báo biến cục bô;

Mã chương trình kiểm tra biến a;

}Chú ý: Hàm không khai báo nguyên mẫu phải được xây dựng trước hàm có lờigọi hàm đó Ở ví dụ trên do hàm “bit kiemtra(unsigned int a)” đã được khai báonguyên mẫu hàm ở trên nên có thể xây dựng hàm ở bất kì vị trí nào trong chươngtrình

2 Hàm trong C

Hàm là khối tạo nên chương trình là bao gồm các chương trình con Hàm trong

C có thể trả về kết quả thông qua tên hàm hay có thể không trả về kết quả.Hàm có 2 loại: Hàm chuẩn và hàm tự định nghĩa

Hàm thư viện là những hàm đã được định nghĩa sẵn trong một thư viện nào đó, muốn sử dụng các hàm thư viện thì phải khai báo thưviện trước khi sử dụng bằng lệnh

#include <tên thư viện.h>

Cấu trúc của một hàm tựthiết kế:

<kiểukết quả> Tên hàm ([<kiểu t số><tham số>][,<kiểu t số><thamsố>][…]) {

[Khai báo biến cục bộvà các câu lệnh thực hiện hàm]

Trang 5

void… Một hàm có thểcó hoặc không có kết quả trả về Trong trường hợp hàm không

có kết quả trảvề ta nên sử dụng kiểu kết quả là void

- Kiểu t số: là kiểu dữ liệu của tham số

- Tham số:là tham số truyền dữ liệu vào cho hàm, một hàm có thể có hoặc không có tham số

B ướ c 1: tính giá tr c a (bi u th c) sauị ủ ể ứ while

B ướ c 2: n u giá tr tính đế ị ượ ủc c a (bi u th c) làể ứ ‘sai’ (==0) thì k t ếthúc vòng l pặ while.

B ướ c 3: n u giá tr c a (bi u th c) làế ị ủ ể ứ ‘đúng’ (!=0) thì th c hi n ự ệ

kh i l nh sauố ệ while.

B ướ c 4: quay l i bạ ước 1

Chú ý: Thân while có th để ược th c hi n m t l n ho c nhi u l n và cũng ự ệ ộ ầ ặ ề ầ

có th không để ược th c hi n l n nào n u ngay t đ u bi u th c sau while ự ệ ầ ế ừ ầ ể ứ

đã sai

+ Bi u di n b ng l u đ : ể ễ ằ ư ồ

Trang 6

Bi u th c 3: bể ứ ước nh y - thả ường dùng v i ý nghĩa là thay đ i bớ ổ ước nh y.ả

C 3 bi u th c này đ u là tuỳ ch n, chúng có th v ng m t trong câu ả ể ứ ề ọ ể ắ ặ

Ngượ ạc l i, n u bi u th c có giá tr ‘đúng’ ( khác 0) thì chuy n t i bế ể ứ ị ể ớ ước 3

B ướ c 3: Th c hi n kh i l nh sau for ( thân c a for ), chuy n t i bự ệ ố ệ ủ ể ớ ước 4

B ướ c 4: Th c hi n bi u th c 3, r i quay v bự ệ ể ứ ồ ề ước 2

Trang 8

B ướ c 2: ki m tra giá tr bi u th c <bi u th c> sauể ị ể ứ ể ứ while, n u có giá tr ế ị

‘đúng’ ( khác 0) thì l p l i bặ ạ ước 1, n u ‘sai’ (=0) thì k t thúc vòng l p.ế ế ặ

+ Bi u di n b ng l u đ : ể ễ ằ ư ồ

- C u trúc l a ch n: switch ấ ự ọ

Cú pháp c a l nh switch là ki m tra m t vài giá tr h ng cho m t bi u ủ ệ ể ộ ị ằ ộ ể

th c, tứ ương t v i nh ng gì chúng ta làm đ u bài này khi liên k t m t vài ự ớ ữ ở ầ ế ộ

l nh if và else if v i nhau D ng th c c a nó nh sau:ệ ớ ạ ứ ủ ư

switch (expression)

{

case constant1:

block of instructions 1

Trang 9

Nó ho t đ ng theo cách sau: switch tính bi u th c và ki m tra xem nó ạ ộ ể ứ ể

có b ng constant1 hay không, n u đúng thì nó th c hi n block of instructions ằ ế ự ệ

1 cho đ n khi tìm th y t khoá break, sau đó nh y đ n ph n cu i c a c u ế ấ ừ ả ế ầ ố ủ ấtrúc l a ch n switch Còn n u không, switch sẽ ki m tra xem bi u th c có ự ọ ế ể ể ứ

b ng constant2 hay không N u đúng nó sẽ th c hi n block of instructions 2 ằ ế ự ệcho đ n khi tìm th y t khoá break.ế ấ ừ

Cu i cùng, n u giá tr bi u th c không b ng b t kỳ h ng nào đố ế ị ể ứ ằ ấ ằ ược ch ỉ

đ nh trên (b n có th ch đ nh bao nhiêu câu l nh case tuỳ thích), chị ở ạ ể ỉ ị ệ ương trình sẽ th c hi n các l nh trong ph n default: N u nó t n t i vì ph n này ự ệ ệ ầ ế ồ ạ ầkhông b t bu c ph i có.ắ ộ ả

2. S khác nhau gi a while và do whil ự ữ e

While được dùng đ ki m tra đi u ki n trể ể ề ệ ước; n u đi u ki n tr ế ề ệ ả

về true thì th c thi nh ng câu l nh bên trong ự ữ ệ

Trang 10

Do-While được dùng đ th c thi nh ng câu l nh bên trongể ự ữ ệ ít nh t m t ấ ộ

l ntrầ ước khi ki m tra đi u ki n; n u đi u ki n tr vể ề ệ ế ề ệ ả ề true thì ti p t c th c ế ụ ựthi; n u đi u ki n làế ề ệ false thì thoát kh i vòng l p.ỏ ặ

3. Ph ươ ng pháp đ c giá tr c a c m bi n DS1820 theo chu n giao ọ ị ủ ả ế ẩ

ti p 1 dây(onewire) ế Chu n onewire theo phẩ ương th c giao ti p ứ ếmaster/slave

Các hàm h tr đ th c hi n vi c giao ti p DS1820 v i vi đi u khi n.ỗ ợ ể ự ệ ệ ế ớ ề ể

N i dung các hàm nh sau :ộ ư

- Sbit OW_Bit at P1_2_bit; //Kh i t o chân dataở ạ

- Unsigned short Ow_Reset(); //Phát ra l nh reset c m bi n ệ ả ếDS1820

- Unsigned short Ow_read();//Đ c d li u t c m bi n DS1820,d ọ ữ ệ ừ ả ế ữ

li u tr v dệ ả ề ướ ại d ng unsigned short

- Void Ow_Write(char par) //G i l nh xu ng DS1820ử ệ ố

Quy t c: Mu n nhân 1 s v i 2 ta d ch s đó qua trái 1 bit ắ ố ố ớ ị ố

- T ng quát, mu n nhân m t s nguyene v i 2^i ta d ch s đó qua trái iổ ố ộ ố ớ ị ốbit;

Trang 11

y=x Shl 2;//y=01001100=x*4=76//

}

D chị trái đượ cký hi uệ là : << d chị chuy nể toàn bộ dãy bit sang trái theo

s bit đố ượ yêu c uc ầ d ch.ị

// tat tat ca cac LED

P0 = 0xff ; // tat cac LED tren PORT0

P1 = 0xff ; // tat cac LED tren PORT1

P2 = 0xff ; // tat cac LED tren PORT2

Trang 12

P3 = 0xff ; // tat cac LED tren PORT3

// LED duoi nhau tren PORT1

S đ nguyên lý: ơ ồ

Trang 13

Mô ph ng: ỏ

Ma tr n phím 4x4 cho phép các b n nh p các ch s , ch cái, ký hi u vào b ậ ạ ậ ữ ố ữ ệ ộ

đi u khi n qua đó dùng đ đi u khi n m t thi t b ngo i vi nào đó.ề ể ể ề ể ộ ế ị ạ

Các b n có th m c thêm tr treo (thông thạ ể ắ ở ường là 10K) cho các nút b m đ ấ ểnút b m ho t đ ng n đ nh h n.ấ ạ ộ ổ ị ơ

- Nguyên lý ho t đ ng c a ma tr n phím – thu t toán quét ma tr n ạ ộ ủ ậ ậ ậ phím.

Đ giao ti p để ế ược v i ma tr n phím 4x4, tôi dùng phớ ậ ương pháp "Quét"

đ ki m tra xem nút nào để ể ược b m, c th cách quét nh sau (quét theo c t):ấ ụ ể ư ộ

Trang 14

-Các chân P1.0, P1.1, P1.2, P1.3 (các hàng) được thi t l p là các ế ậ

chân INPUT, còn l i các chân P1.4, P1.5, P1.6, P1.7 (các c t) là các ạ ộ

chân OUTPUT ( m c logic ‘0’).ở ứ

-Gi sả ử SW9 được b m:ấ

- Cho COL1 = 0 (COL[2 4] = 1), ki m tra tr ng thái c a các hàng:ể ạ ủ

ROWA= ROWB= ROWC= ROWD=1: v y k t lu n không có nút đậ ế ậ ược b m trên ấCOL1

- Cho COL2 = 0 (COL[1,3,4] = 1), ki m tra tr ng thái c a các hàng:ể ạ ủ

ROWA=ROWB=ROWD=1, ROWC =0: v y k t lu n có nút n m trên hàng C, c t 2ậ ế ậ ằ ộ

được b m (SW9).ấ

- Cho COL3 = 0 (COL[1,2,4]=1): ROWA = ROWB = ROWC= ROWD=1: v y

k t lu n không có nút đế ậ ược b m trên COL3.ấ

- Cho COL4 = 0 (COL[1,2,3]=1): ROWA= ROWB= ROWC= ROWD=1: v y k tậ ế

lu n không có nút đậ ược b m trên COL4.ấ

Quét tương t đ i v i nh ng nút b m khác.ự ố ớ ữ ấ

2 Ph ươ ng pháp ch ng nhi u, ch ng đè cho nút b m b ng ph n c ng và ố ễ ố ấ ằ ầ ứ

ph n m m ầ ề

- Ph n c ng: ầ ứ M ch ch ng d i.ạ ố ộ

Bình thường khi không tác đ ng ngõ ra qua c ng đ o m c th p Khi ộ ổ ả ở ứ ấ

nh n SW, t x nhanh qua SW t o m t xung m c cao t i ngõ ra Khi h ấ ụ ả ạ ộ ứ ạ ở

m ch ngõ vào, t n p lên Vcc qua Rạ ụ ạ

Th i gian n p: T1= 5RC =5x10(K)x1(uF)=50msờ ạ

Trang 16

P1=0x7F; //Led 7 port 1 sáng P2=0x7F; //Led 7 port 2 sáng P3=0x7F; //Led 7 port 3 sáng Delay_ms(300); // Tr 300ms ễ } while(1); //L p ặ

Nh v y n u b ng cách nào đó ta cho m t con led đ n ch p t t th t ư ậ ế ằ ộ ơ ớ ắ ậnhanh (trên 25 Hz, nhanh h n n a càng t t, vài trăm Hz, th m chí vài ơ ữ ố ậKHz càng t t mi n là con led có th ch p t n s đó) ta sẽ th y con led ố ễ ể ớ ầ ố ấsáng luôn, mà th c ch t là nó đang sáng_ t t_sáng_t t… r t nhanh.ự ấ ắ ắ ấBây gi ta đi u khi n m t led b y đo n (lo i A chung), cho chân chung ờ ề ể ộ ả ạ ạlên ngu n, đi u khi n sáng t t nhanh cho hai thanh b,c c a nó (5 thanh ồ ề ể ắ ủcòn l i nh t t) ta th y nó sáng lên s 1, th c ch t là đang ch p s 1.ạ ớ ắ ấ ố ự ấ ớ ố

B ng cách cho luân phiên nhi u led hi n th thông tin khác nhau ta có ằ ề ể ị

c m giác nhi u led b y đo n đang sáng đ ng th i, v i cách này ta ch ả ề ả ạ ồ ờ ớ ỉ

c n m t bus d li u n i song song cho t t c các led (g m 7 dây ầ ộ ữ ệ ố ấ ả ồ

a,b,c,d,e,f,g) m i led đỗ ược đi u khi n b ng m t tín hi u khác sao cho ề ể ằ ộ ệ

t i m t th i đi m ch có duy nh t m t led b y đo n đạ ộ ờ ể ỉ ấ ộ ả ạ ược phép hi n ể

th và lúc này bus cũng đang truy n d li u ng v i Led này N u có quáị ề ữ ệ ứ ớ ế

Trang 17

nhi u led b y đo n ta ph i k t h p thêm các IC gi i mã ch n kênh ề ả ạ ả ế ợ ả ọ

c p tín hi u a,b,c,d,e,f,g cho led 7 đo n ).ấ ệ ạ

Xem các hình dưới, n u cho các led luân phiên sáng t t, th i gian m i ế ắ ờ ỗled khá lâu (lâu h n th i gian l u nh c a m t) ta sẽ th y t ng led m t ơ ờ ư ả ủ ắ ấ ừ ộsáng nh sau:ư

N u tăng t n s quét (gi m th i gian dành cho m i led) ta sẽ th y k t qu 4 ế ầ ố ả ờ ỗ ấ ế ảled cùng sáng nh sau:ư

Trang 18

Phương pháp này ti n d ng ph n c ng l n ph n m m, tuy nhiên n u ệ ụ ở ầ ứ ẫ ầ ề ế

s lố ượng led quá nhi u thì th i gian sáng trung bình dành cho m i led là T l i ề ờ ỗ ạ

gi m đi (T =1/n v i là s led b y đo n, s đ i tả ớ ố ả ạ ố ố ượng được quét ), Đi u này ềkéo theo các led sẽ suy gi m đ sáng M t khác ph i tích h p thêm IC gi i mã,ả ộ ặ ả ợ ảnhi u vi c phát sinh cho thi t k m ch l n l p trình Tóm l i, phề ệ ế ế ạ ẫ ậ ạ ương pháp này ng d ng cho các hi n th thông tin ít ít, c 20 led b y đo n tr xu ng thìứ ụ ể ị ỡ ả ạ ở ốtuy t v i nh ng thông tin nhi u nh b ng t giá ngo i t c n vài trăm led thì ệ ờ ư ề ư ả ỉ ạ ệ ầkhông n.ổ

2 Cách thay đ i th i gian đ m tr trong ch ổ ờ ế ễ ươ ng trình Led 7 seg?

Để thay đ i th i gian đ m tr trong chổ ờ ế ễ ương trình Led 7 seg ta ch n th i ọ ờgian delay l n h n thì tr sẽ l n h nớ ơ ễ ớ ơ

3.Vi t ch ế ươ ng trình đi u khi n đ m t 0 ề ể ế ừ 1020 … 500490480

470… 0 và th c hi n l i? Và l u đ thu t toán? Gi i thích t ng ự ệ ạ ư ồ ậ ả ừ câu l nh? ệ

#include "Display_utils.h"

unsigned short shifter=1, digits_array_index=0; // khai bao cac bien cuc bo

Trang 19

unsigned int digit = 0, number = 0;

Trang 20

S Đ THU T TOÁN: Ơ Ồ Ậ

Trang 21

Câu 7:

Trang 22

1 LPF là b l c thông th p (Low Pass Filter) t c là b l c ch cho thành ph n ộ ọ ấ ứ ộ ọ ỉ ầ

t n s th p h n t n s c t đi qua , thành ph n t n s cao ầ ố ấ ơ ầ ố ắ ầ ầ ố sẽ b lo i b ị ạ ỏ

2 Phương pháp tăng đ chính xác c a phép đo nhi t đ , phép đo dòng đi n, ộ ủ ệ ộ ệ

đi n áp,… dùng ADC dùng l c thông th p, đ n gi n nh t là l y trung bình ệ ọ ấ ơ ả ấ ấ

c ng c a các l n trích m u trong m t th i gian nào đó t m 500ms nêu thu t ộ ủ ầ ẫ ộ ờ ầ ậtoán và cách th c hi n trongự ệ

Đọc giá trị đo nhiệt lần

n

Trể 500ms

Hiển thị kết quả lần đo

n

Trang 23

// =================ket noi modul LCD ===============

sbit OW_Bit at P1_2_bit; // thiet lap pinout cho DS18x20

const unsigned short TEMP_RESOLUTION = 9; // thiet lap do phan giai tuong ung cho DS1820

char *text = "000.0000"; // thiet lap con tro voi 9 ky tu

unsigned temp; // khai bao bien temp

void Display_Temperature(unsigned int temp2write) {

const unsigned short RES_SHIFT = TEMP_RESOLUTION - 8; // hien thi gia tri T

am va T duong

char temp_whole; // khai bao bien T cuc bo

unsigned int temp_fraction; // khai bao bien T phan so

//=========== kiem tra nhiet do am =====================

if (temp2write & 0x8000) {

text[0] = '-';

temp2write = ~temp2write + 1;

Trang 24

}

temp_whole = temp2write >> RES_SHIFT; // xuat temp_whole dich bit sang phai

//=========== canh bao qua nhiet =======================

if(temp_whole >=20 && temp_whole<= 40)

//=========== chuyen doi temp_whole thanh cac ky tu ========

if (temp_whole/50) // neu xuat hien nhiet do o hang tram thì text[0] = temp_whole/50 + 48; // xuat so hang tram

else

text[0] = '0'; // neu khong thi hien thi 0

text[1] = (temp_whole/10)%10 + 48; // xuat hang chuc

text[2] = temp_whole%10 + 48; // xuat hang don vi

Trang 25

//=========== xuat nhiet do la phan so va chuyen sang kieu unsigned int temp_fraction = temp2write << (4-RES_SHIFT);

temp_fraction &= 0x000F;

temp_fraction *= 625;

text[4] = temp_fraction/500 + 48; // xuat phan nghin text[5] = (temp_fraction/50)%10 + 48; // xuat phan tram text[6] = (temp_fraction/10)%10 + 48; // xuat phan chuc text[7] = temp_fraction%10 + 48; // xuat phan don vi Lcd_Out(2, 5, text); // va hien thi tren LCD bat dau tu hang 2 cot 5 }

//==================== chuong trinh chinh =============

Trang 26

Lcd_Chr(2,14,'C'); // hien thi ky tu C

//====== vong lap chinh

// ======thuc hien doc nhiet do tu DS18x20

do {

Ow_Reset(); // thiet lap tin hieu OneWire Ow_Write(0xCC) // thuc hien lenh SKIP_ROM, gui 1 byte toi DS1820 Ow_Write(0x44); // thuc hien lenh Convert_T

temp = (Ow_Read() << 8) + temp;

Display_Temperature(temp); // hien thi nhiet do

Delay_ms(500); // T o tr 0,5s ạ ễ

}

//

Trang 27

-Câu 8:

1 Ng t là gì ? Các lo i ng t trong h VĐK 8051 ắ ạ ắ ọ

Ng t (interrupt) là quá trình d ng chắ ừ ương trình chính đang ch y đ u ạ ể ưtiên th c hi n m t chự ệ ộ ương trình khác, chương trình này đượ ọc g i là chương trình ph c v ng t (ISR –Interrupt Service Routine) ISR hoàn toàn gi ng v i ụ ụ ắ ố ớ

m t chộ ương trình bình thường trên máy tính, nghĩa là nó có kh năng truy ả

xu t đ n t t c các l nh ngôn ng máy c a P Tuy nhiên cu i ISR sẽ k t thúcấ ế ấ ả ệ ữ ủ μ ố ế

b ng l nh IRET (Interrupt Return) đ P ti p t c th c hi n l nh đã k tthúc ằ ệ ể μ ế ụ ự ệ ệ ế

trước đây

Trong các quá trình ng t, ta phân bi t thành 2 lo i: ng t c ng và ng t ắ ệ ạ ắ ứ ắ

m m.ề

Ng t m m : là ng t đắ ề ắ ượ ọ ằc g i b ng m t l nh trong chộ ệ ương trình ngôn

ng máy Ng t m m đữ ắ ề ược th c hi n trên h p ng thông qua l nh INT Đ i ụ ệ ợ ữ ệ ố

v i các ngôn ng b c cao h n, v n cho phép th c hi n g i ng t nh ng ph i ớ ữ ậ ơ ẫ ự ệ ọ ắ ư ả

được biên d ch thành l nh INT trong h p ng r i m i th c hi n.ị ệ ợ ữ ồ ờ ự ệ

Ng t c ng :khác v i ng t m m, ng t c ng không đắ ứ ớ ắ ề ắ ứ ược kh i đ ng bên ở ộtrong máy tính mà do các linh ki n đi n t tác đông lên h th ng Ng t c ng ệ ệ ử ệ ố ắ ứcũng được chia thành 2 lo i: ng t che đạ ắ ược và ng t không che đắ ược Ng t cheắ

được là ng t có th cho phép hay không cho phép th c thi b ng ph n m m ắ ể ự ằ ầ ềthông qua c ng t IF (Interrupt Flag): l nh CLI (Clear InterruptFlag) sẽ c m ờ ắ ệ ấ

ng t và l nh STI (Set Interrupt Flag) sẽ cho phép các ng t này ho t đ ng.ắ ệ ắ ạ ộ

Khi th c hi n l nh g i m t ng t nào đó, chự ệ ệ ọ ộ ắ ương trình con ph c v cho ụ ụ

Ngày đăng: 08/10/2021, 09:07

HÌNH ẢNH LIÊN QUAN

Xem các hình dưới, nu cho các led luân phiên sáng t t, thi gian mi ỗ led khá lâu (lâu h n th i gian l u  nh c a m t) ta sẽ th y t ng led m t ơờư ảủắấ ừộ sáng nh  sau:ư - cấu trúc  while, do while, for, switch
em các hình dưới, nu cho các led luân phiên sáng t t, thi gian mi ỗ led khá lâu (lâu h n th i gian l u nh c a m t) ta sẽ th y t ng led m t ơờư ảủắấ ừộ sáng nh sau:ư (Trang 17)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w