Tải bản đầy đủ (.docx) (16 trang)

Báo cáo thực hành giao tiếp điều khiển thiết bị ngoại vi tên bài thực hành điều khiển đóngmở cổng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (915.86 KB, 16 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>BÁO CÁO THỰC HÀNH </b>

<b>GIAO TIẾP ĐIỀU KHIỂN THIẾT BỊ NGOẠI VI </b>

<i><b>Tên bài thực hành: Điều khiển đóng/mở cổng</b></i>

<b>PHẦN I: Chuẩn đầu ra mơn học -1: Trình bày được cấu tạo, nguyên lý hoạt động vàbiết sử dụng các thành phần trong hệ thống, thiết bị điện tử </b>

<i><b>1.1. Mơ tả tóm tắt nội dung bài thực hành </b></i>

- Mơ tả tóm tắt nội dung, yêu cầu và mục đích của bài thực hành.

<b>Q trình đóng cổng: Nhấn BT1 trên bo mạch hoặc trên VS-C# để bắt đầu đóng → L1 </b>

sáng để báo cổng đang được đóng → VS-C# hiển thị “Đang đóng cổng” →nhấn SW1 để báo đã đóng xong →L1 tắt →VS-C# hiển thị “Đã đóng”.

<b>Quá trình mở cổng: Nhấn BT2 trên bo mạch hoặc trên VS-C# để bắt đầu mở →L2 sáng </b>

để báo cổng đang được mở →VS-C# hiển thị “Đang mở cổng” →nhấn SW1 để báo đã mở xong →L2 tắt →VS-C# hiển thị “Đã mở”.

- Xác định, liệt kê các linh kiện, thiết bị cần sử dụng.

<b>o 02 SWITCH: 01 Switch (SW1) báo hành trình đã đóng cổng xong; 01 Switch </b>

-1-

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>(SW2) báo hành trình đã mở cổng xong; o 02 LED: 01 Led (L1) báo trạng thái </b>

cổng đang trong q trình đóng; 01 Led (L2) báo trạng thái cổng đang trong quá

- Giải thích chức năng, nhiệm vụ từng khối.

+ Khối Program (chương trình): điều khiển hoạt động của các thành phần linh kiện. + Khối RS232 (cổng USB): Giúp thiết bị điều khiển (PIC18F4550) giao tiếp với các thiết bị ngoại vi.

+ Khối Switch: thơng báo q trình đóng/mở cổng đã hồn thành. + Khối LED: thơng báo q trình đóng/mở cổng đang được thực hiện. + Khối Button: dùng để đóng/mở cổng

-2-

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>PHẦN II: Chuẩn đầu ra mơn học 2: Có khả sử dụng các phần mềm lập trình, mơphỏng </b>

<i><b>2.1. Khả năng sử dụng phần mềm mô phỏng, vẽ mạch - Proteus Vẽ sơ đồ nguyên lý của mạch trong Proteus. </b></i>

<i><b>2.2. Khả năng sử dụng phần mềm lập trình cho PIC - MikroC </b></i>

Một hình ảnh chụp màn hình Full – có code trong phần mềm MikroC.

-3-

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<i><b>2.3. Khả năng sử dụng phần mềm viết giao diện Visual Studio C#. </b></i>

Hai hình ảnh chụp màn hình Full – code và giao diện VS C#.

-4-

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<b>PHẦN III. Chuẩn đầu ra môn học 3: Có khả năng phân tích, thiết kế giải thuật vàlập trình ứng dụng </b>

<i><b>3.1. Lưu đồ giải thuật cho Arduino hoặc PIC </b></i>

Vẽ lưu đồ giải thuật cho Arduino hoặc PIC.

-5-

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<i><b>3.2. Lập trình code cho Arduino hoặc PIC </b></i>

Code đầy đủ, có giải thích từng câu lệnh của code. // Khai bao bien va du lieu

#define led_on 1 // Muc logic dieu khien trang thai LED #define led_off 0

#define in_size 64 // Mac dinh kich thuoc du lieu doc/ghi #define out_size 64

char count = 0; // Chua so lan nhan SW bit oldstate; // Co bao trang thai cho SW

-6-

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

unsigned char readbuff[in_size] absolute 0x500; // Bo dem chua du lieu doc va ghi unsigned char writebuff[out_size] absolute 0x540; // Nen de trong vung USB RAM, xem them trong datasheet

void interrupt () {

if(PIR2.USBIF == 1) {

PIR2.USBIF = 0; // Clear interrupt bit USB_Interrupt_Proc(); // ISR cho USB

ADCON1 |= 0x0F; // Tat ca chan Analog thanh chan Digital CMCON |= 0x07; // Cam modul Comparators

-7-

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

// Cau hinh Port B // Cau hinh modul USB

HID_Enable(&readbuff, &writebuff); // Cho phep USB o che do HID // Cau hinh ngat

INTCON.INT0IF = 0; // Clear interrupt bit

INTCON.INT0IE = 1; // Enable external interrupts

INTCON2.INTEDG0 = 1; // External interrupt on rising edge PIR2.USBIF = 0; // Clear interrupt bit

PIE2.USBIE = 1; // Enable the USB interrupt INTCON.GIE = 1; // Enable global interrupt

INTCON.PEIE = 1; // Enable periphiral interrupts while

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

RE0_bit = led_on; // Dieu khien LED sang writebuff[0] = 'a'; // Gui phan hoi ma bao LED sang

}

else if(readbuff[0] == 0) {

RE1_bit = led_on; // Dieu khien LED tat writebuff[0] = 'b'; // Gui phan hoi ma bao LED tat

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<small> byte[] readbuff = newbyte[65]; </small>

<small>byte[] writebuff = newbyte[65]; </small>

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<small>EventHandler(this.usbHidPort_OnSpecifiedDeviceRemoved), sender, (object)e); } else { </small>

<small> toolStripStatusLabel.Text = "Device Disconnected"; </small>

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<small> toolStripStatusLabel.Text = "New Received Data"; if (readbuff[1] == 'a') // Khi dữ liệu</small>

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

<i><b>3.4. Biên dịch code và sửa lỗi. </b></i>

- Hai hình ảnh chụp màn hình khi biên dịch code thành công cho Arduino (hoặc PIC) và VS C#.

- Một vài hình ảnh bị lỗi (nếu có) và trình bày cách khắc phục lỗi đó. Link video minh chứng:

si=QzCJj2bTxza48NfG

-14-

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<b>PHẦN IV: Chuẩn đầu ra mơn học 4: Có khả năng lắp ráp, cân chỉnh các boardmạch điện tử theo qui trình </b>

<i><b>4.1. Quy trình Lắp ráp và Test thực nghiệm </b></i>

Viết quy trình Test theo từng bước: bước 1, bước 2, bước 3 …

<i><b>4.2. Lắp ráp mạch thực tế </b></i>

Một hình ảnh chụp bo mạch sau khi đã lắp ráp xong hồn thiện Một hoặc hai hình ảnh có các thành viên đang thao tác trên Testboard Một hình ảnh chụp kết quả khi bo giao tiếp được với VS C#.

<i><b>4.3. Khả năng cân chỉnh bo mạch </b></i>

Trình bày + hình ảnh lỗi khi thao tác lắp ráp và Test. Trình bày cách khắc phục, xử lý lỗi đó.

-15-

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<b>PHẦN V: Kết luận bài thực hành </b>

cho bài thực hành.

-16-

</div>

×