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

báo cáo hệ thống nhúng ct399 đề tài mạch đếm xuống hiển thị led 7 đoạn

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 (3.52 MB, 22 trang )

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

<b>ĐẠI HỌC CẦN THƠTRƯỜNG BÁCH KHOA</b>

<b>KHOA ĐIỆN TỬ-VIỄN THÔNG</b>

<b>BÁO CÁO</b>

<b>HỆ THỐNG NHÚNG (CT399)</b>

<b>ĐỀ TÀI: MẠCH ĐẾM XUỐNG HIỂNTHỊ LED 7 ĐOẠN </b>

<b>Giảng viên hướng dẫn: Sinh viên thực hiện:</b>

Năm học 2023-2024

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

<b>Hình 2.9</b>

<b>- Bước 9: Gán địa chỉ nền cho các thành phần </b>

<b>Hình 2.10</b>

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

<b>- Bước 10: Lưu hệ thống và sinh tập tin HDL </b>

<b>Hình 2.11</b>

<b>Hình 2.12</b>

<b>3. Gán chân cho hệ thống </b>

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

<b>- Bước 1: Thực hiện gán chân cho sơ đồ hệ thống</b>

<b>Hình 3.1</b>

<b>- Bước 2: Chọn tập tin quy ước gán chân </b>

<b>Hình 3.2</b>

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

<b>Hình 3.4</b>

<b>Hình 3.5Kết quả gán chân</b>

<b>Hình 3.6</b>

<b>- Bước 4: Nạp thiết kế phần cứng xuống chip FPAG</b>

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

<b>Hình 4.3</b>

<b>- Bước 3: Cửa sổ Properties dự án lập trình </b>

<b>Hình 4.4</b>

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

<b>Hình 4.5</b>

<b>- Bước 4: Viết code cho chương trình </b>

#include <system.h>#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include "alt_types.h"

#include "altera_avalon_pio_regs.h"#include "sys/alt_irq.h"

char hex_segs[]= {0,0,0,0,0,0,0,0};char contant[4]={0,0,0,0};

char dec_digit[]= {0,0,0,0};char i;

void hex_display(char number , char order_7seg){volatile int *HEX3_0 = (int *)HEX3_0_BASE;hex_segs[order_7seg]= seven_seg[number];*(HEX3_0) = *(int*)(hex_segs);

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

dec_digit[1] = ((number -(number % 100)) /100)%10;dec_digit[2] = ((number -(number % 10)) /10)%10;dec_digit[3] = number %10;

data = data & 0x000000ff;if (data!=10){

contant[3]= (char) data-48; }

void display(char number, char *dec_digit){split4digit(number, dec_digit);

void handle_interrupt (int key_values){ if (key_values & 0x01){

running = !running; if (!running){

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

// Nếu bộ đếm dừng, giữ ngun giá trị hiện tại và khơng làm gì cả display(count_con, dec_digit);

} }}

#ifdef KEYS_BASE

static void handle_key_interrupts (void* context){

volatile int* edge_capture_ptr = (volatile int*) context;

*edge_capture_ptr =

handle_interrupt (*edge_capture_ptr);

static void init_key_pio(){

volatile void* edge_capture_ptr = (void*) &edge_capture;

int main (void){#ifdef KEYS_BASE

while (1){ input_data(); usleep(1000000);

alt_printf("NHAP VAO GIA TRI:\n"); if (running){

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

usleep(1000000); // Wait for 1 second display(i, dec_digit);

// Break the loop if the counter is stopped if (!running) {

break; }

<b>Hình 4.6</b>

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

<b>Hình 4.7</b>

<b>Hình 4.8</b>

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

<b>Hình 4.9</b>

<b>- Bước 5: Biên dịch chương trình </b>

<b>Hình 4.10</b>

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

<b>Hình 4.11</b>

<b>- Bước 6: Thiết lập kết nối hệ thống nhúng và máy tính </b>

<b>Hình 4.12</b>

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

<b>Hình 4.13</b>

<b>II. KẾT QUẢ </b>

Dưới đây là kết quả chạy trên kit FPAG tại phịng thí nghiệm.

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

<b>III. ĐÁNH GIÁ VÀ NHẬN XÉT</b>

- Mạch chạy đúng theo yêu cầu đề ra của đồ án.

- Kết hợp reset về 0, tạm dừng và tiếp tục khi nhấn nút. - Hoàn thành được mục tiêu đề ra.

</div>

×