Thực Tập Vi Điều Khiển Ứng Dụng Viết Chương Trình Điều Khiển 8 Led Đơn Sáng Đuổi Từ Trái Sang Phải , Sau Đó Chạy Từ Phải Sang Trái Với Cầu Như Sau

45 3 0
Thực Tập Vi Điều Khiển Ứng Dụng Viết Chương Trình Điều Khiển 8 Led Đơn Sáng Đuổi Từ Trái Sang Phải , Sau Đó Chạy Từ Phải Sang Trái Với Cầu Như Sau

Đ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

ĐẠI HỌC LẠC HỒNG KHOA CƠ ĐIỆN ĐIỆN TỬ - THỰC TẬP VI ĐIỀU KHIỂN ỨNG DỤNG TRƯƠNG THANH MINH HOÀNG LỚP: 20OT112 Đồng Nai, 4/2023 Yêu cầu 1.1 Viết chương trình điều khiển led đơn sáng đuổi từ trái sang phải , sau chạy từ phải sang trái với cầu sau: -Khi trạng thái reset (hay cấp nguồn cho mạch), led chưa hoạt động -Sau nhấn nút Start led bắt đầu hoạt động Nội dung triển khai: Câu (10đ): Lập bảng thống kê Input/Output, địa sử dụng cho ngõ vào Bảng thống kê địa ngõ vào (Input) Địa / Tên Input Mô tả chức STT Pin Nút Start Phát tín hiệu đầu vào 12 Bảng thống kê địa ngõ (Output) Địa / STT Tên output Mô tả chức Pin LED ON/OFF Led LED ON/OFF Led LED ON/OFF Led LED ON/OFF Led LED ON/OFF Led LED ON/OFF Led LED ON/OFF Led LED 10 ON/OFF Led Câu (10đ): Vẽ sơ đồ khối hệ điều khiển này, giải thích hoạt động khối Khối ngõ vào Khối xử lý trung tâm Khối ngõ Khối Nguồn *Giải thích hoạt động khối: -Khối Nguồn: cung cấp lượng cho tồn khối cịn lại -Khối ngõ vào: Nhận tín hiệu bên ngồi đưa vào Khối xử lí trung tâm -Khối xử lý trung tâm: Nơi xử lí tín hiệu để đưa kết cuối -Khối ngõ ra: Nơi tiếp nhận kết cuối từ khối xử lý trung tâm thực Câu 3: (10đ): Vẽ sơ đồ kết nối (mạch nguyên lý) hệ thống Câu (20đ): Trình bày sơ đồ giải thuật xử lý đề *Sơ đồ giải thuật led đơn sáng đuổi từ trái sang phải (1) Bắt đầu LED = [1] Delay 100ms LED = Thờm LED Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau *S gii thut led đơn sáng đuổi từ phải sang trái(2) Bắt đầu LED = [1] Delay 100ms LED = Giảm LED *Sơ đồ giải thuật nút ấn Bắt đầu Đọc giá trị nút nhấn Đúng Nh ấn Run = Sai Run = Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau *S gii thut tng thể chương trình Bắt đầu Run=1 (1) (2) Kết hỳ Kt hỳ Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Cõu (50): Vit code chng trỡnh xử lý (30đ) trả lời câu hỏi(20đ) (copy code vào gởi file qua drive) int dem=0, run=0; void setup() { pinMode(3,OUTPUT); pinMode(4,OUTPUT); pinMode(5,OUTPUT); pinMode(6,OUTPUT); pinMode(7,OUTPUT); pinMode(8,OUTPUT); pinMode(9,OUTPUT); pinMode(10,OUTPUT); pinMode(12,INPUT); } void loop() { if(digitalRead(12)==0) { while(digitalRead(12)==0){} dem++; delay(50); run=1; } if(dem==1&&run==1) { for(int i=3;i2;i ) { digitalWrite(i,HIGH); delay(100); digitalWrite(i,LOW); } run=0; dem=0; } } Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Yờu cu 1.2: Viết chương trình điều khiển led đơn sáng dồn từ trái sang phải , sau chạy từ phải sang trái với cầu sau: -Khi trạng thái reset (hay cấp nguồn cho mạch), led chưa hoạt động -Sau nhấn nút Start led bắt đầu hoạt động -Khi nhấn nút Stop led dừng lại trở trạng thái reset (tất led tắt) Câu (10đ): Lập bảng thống kê Input/Output, địa sử dụng cho ngõ vào Bảng thống kê địa ngõ vào (Input) STT Tên Input Địa / Pin Mô tả chức Nút nhấn Start Pin 13 Nút khởi động, thiết kế tích cực mức Nút nhấn Stop Pin 12 Nút dừng, thiết kế tích cực mức Bảng thống kê địa ngõ (Output) STT Tên output Địa / Pin Mô tả chức Led1 Pin Trạng thái sáng/ tắt ngỏ led1 Led2 Pin Trạng thái sáng/ tắt ngỏ led2 Led3 Pin Trạng thái sáng/ tắt ngỏ led3 Led4 Pin Trạng thái sáng/ tắt ngỏ led4 Led5 Pin Trạng thái sáng/ tắt ngỏ led5 Led6 Pin Trạng thái sáng/ tắt ngỏ led6 Led7 Pin Trạng thái sáng/ tắt ngỏ led7 Led8 Pin Trạng thái sáng/ tắt ngỏ led8 Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Cõu (10): V s ca hệ điều khiển này, giải thích hoạt động khối Hình Khối xử lí Cấu tạo ngun lí hoạt động sơ đồ khối: Khối ngõ vào: - Nút nhấn (5V) - Truyền tín hiệu đến khối xử lí trung tâm Khối xử lí trung tâm: - Board mạch Atmega 2560 (5V) - Khối XL trung tâm nhận tín hiệu từ khối ngõ vào tiếp tục truyền tín hiệu tới ngõ Khối tải (ngõ ra): - Led đơn (5V) - Khối tải nhận tín hiệu từ khối XL trung tâm Các Led đơn phát sáng theo liệu người lập trình nạp khối XL trung tâm Khối Nguồn: Cung cấp điện áp 5V khối hoạt động Câu 3: (10đ): Vẽ sơ đồ kết nối (mạch nguyên lý) ca h thng Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Hỡnh S kt ni Cõu (20đ): Trình bày sơ đồ giải thuật xử lý đề Sơ đồ giải thuật nút nhấn Start Bắt đầu Đọc giá trị nút Start Nhấn ? Đ Run = S Kt thỳc Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau S gii thut nỳt nhấn Stop Bắt đầu Đọc giá trị nút Stop Nhấn ? Đ Run = S Kết thúc Sơ đồ giải thuật Led đơn chạy từ trái sang phải Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau define pinData 12 #define pinClock 13 #define pinLatch 10 #define up #define down #define start #define Stop int maled7doan[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; int giaTien=0, Run=0; void nhapDatavaoHC595(int so) { for(int i=0;i>7-i&0x01); digitalWrite(pinClock, HIGH); } } void buttonUp() { int i=0; if(digitalRead(up)==0) { While(digitalRead(up)==0) { i++; delay(1); } if(i>5) // dung la nhan nut { giaTien++; i=0; } else i=0; } } ///////button Down//// void buttonDown() { Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau int i=0; if(digitalRead(down)==0) { while(digitalRead(down)==0) { i++; delay(1); } if(i>5) // dung la nhan nut { giaTien ; i=0; } else i=0; } } void buttonStart() { int i=0; if(digitalRead(start)==0) { while(digitalRead(Start)==0) { i++; delay(1); } if(i>5) // dung la nhan nut { Run=1; i=0; } else i=0; } } void buttonStop() { int i=0; if(digitalRead(Stop)==0) { Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau while(digitalRead)==0) { i++; delay(1); } if(i>5) // dung la nhan nut { Run=0; giaTien=0; i=0; } else i=0; } } void setup() { // put your setup code here, to run once; for(int i=10; i=ght) { giaTri=ghd; } else { giaTri++; i=0; return(giaTri); } } else i=0; } return(giaTri); } Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau Thỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sauThỏằc.tỏưp.vi.iỏằãu.khiỏằn.ỏằâng.dỏằƠng.viỏt.chặặĂng.trơnh.iỏằãu.khiỏằn.8.led.ặĂn.sĂng.uỏằãi.tỏằô.trĂi.sang.phỏÊi sau..chỏĂy.tỏằô.phỏÊi.sang.trĂi.vỏằi.cỏĐu.nhặ.sau int buttonDown(int ghd,int ght) { int i=0; if(digitalRead(Down)==0) { while(digitalRead(Down)==0) { i++; delay(1); } if(i>5) { if(giaTri

Ngày đăng: 14/10/2023, 16:10

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

  • Đang cập nhật ...

Tài liệu liên quan