Nghiên cứu tìm hiểu chip PSoC ứng dụng vào thiết kế mạch điện tử Nghiên cứu tìm hiểu chip PSoC ứng dụng vào thiết kế mạch điện tử Nghiên cứu tìm hiểu chip PSoC ứng dụng vào thiết kế mạch điện tử luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI ĐỖ BÁ THÁI NGHIÊN CỨU TÌM HIỂU CHÍP PSOC ỨNG DỤNG VÀO THIẾT KẾ MẠCH ĐIỆN TỬ LUẬN VĂN THẠC SĨ NGÀNH KỸ THUẬT ĐIỆN TỬ Hà Nội, 2006 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI ĐỖ BÁ THÁI NGHIÊN CỨU TÌM HIỂU CHÍP PSOC ỨNG DỤNG VÀO THIẾT KẾ MẠCH ĐIỆN TỬ LUẬN VĂN THẠC SĨ NGÀNH KỸ THUẬT ĐIỆN TỬ NGƯỜI HƯỚNG DẪN : TS.NGUYỄN NAM QUÂN Hà Nội, 2006 Mục lục Lời mở đầu 30T 30 T Phần1 Tổng quan chip PSoC 30T 30T Chương Đặc điểm chung 30T 30 T 1.1 Bộ vi xử lý 30T 30 T 1.2 Các khối tương tự OnChip 30T 0T 1.3 Các khối số OnChip 30T 30 T 1.4 Khối vào đa chức 30T 30 T 1.5 Ngắt 30T 30T 1.6 Xung nhịp hệ thống 30T 30T 1.7 Một số module thiết lập sẵn từ phần mềm PSoC 30T Designer .6 30T 1.8 Sơ lược phần mềm thiết kế PSoC Designer 30T 30T Chương Đặc điểm cấu trúc vi điều khiển 30T 30T 2.1 Bộ vi xử lý 30T 30T 2.1.1 CPU 30T 30T 2.1.2 Hệ thống ghi 10 30T 30 T 2.1.3 Tập lệnh vi xử lý 11 30T 30 T 2.1.4 Chế độ định địa 12 30T 30T 2.2 Bộ điều khiển ngắt 14 30T 0T 2.2.1 Cấu trúc điều khiển ngắt 15 30T 30 T 2.2.2 Các ghi điều khiển ngắt 15 30T 30T 2.3 Cổng vào đa chức (General Purpose IO – GPIO ) .17 30T 30T 2.3.1 Hệ thống ghi điều khiển vào .18 30T 30T 2.3.2 Phân loại chân vào 19 30T 30 T 2.3.3 Ngắt GPIO 20 30T 30 T Chương Hệ thống khối PSoC số 22 30T 30 T 3.1 Hệ thống ghi 23 30T 30 T 3.2 Các liên kết số toàn cục 25 30T 30T 3.3 Liên kết dãy khối số 27 30T 30T 3.4 Liên kết khối số theo hàng 28 30T 30T 3.5 Nguồn xung nhịp dùng cho khối số 29 30T 30T Chương Hệ thống khối PSoC tương tự .31 30T 30T 4.1 Giao diện tương tự 33 30T 30T 4.1.1 Giao diện ABUS .33 30T 30T 4.1.2 Giao diện với CBUS .33 30T 30 T 4.1.3 Giao diện hệ thống tương tự với chân vào 34 30T 30T 4.2 Nguồn xung nhịp cho hệ thống tương tự 35 30T 30T 4.3 Nguồn tham chiếu cho hệ thống tương tự 35 30T 30T 4.4 Hệ thống ghi 36 30T 30 T Phần Thiết kế hệ thống khóa điện tử sử dụng thẻ chip điện tử .38 30T Mục đích thiết kế 38 30T 30T Chương Thiết kế phần cứng 39 30T 30 T 5.1 Sơ đồ khối tổng quát 39 30T 30T 5.2 Chức chi tiết khối .39 30T 30 T 5.2.2 Nguồn nuôi 40 30T 30T 5.2.3 Đồng hồ 40 30T 30T 5.2.4 Module nhớ 41 30T 30T 5.2.5 Thẻ nhớ 42 30T 0T 5.2.6 Khối bàn phím 44 30T 30 T 5.2.6.1 Thuật tốn chương trình điều khiển phím bấm 45 30T 30 T 5.2.6.2 Thuật toán ngắt quét bàn phím 16 phím .46 30T 30T 5.2.6.3 Chương trình điều khiển qt phím 47 30T 30 T 5.2.7 Khối hình LCD .53 30T 30 T 5.2.8 Khối giao tiếp với máy tính 55 30T 30T 5.2.9 Switch .58 30T 30 T 5.2.10 Mạch cơng suất, khóa cửa cảm biến 59 30T 30 T 5.3 Sơ đồ nguyên lý board mạch 61 30T 30T 5.4 Thiết kế lựa chọn module Onchip 62 30T 30T 5.4.1 Lựa chọn User module 63 30T 30T 5.4.2 Sơ đồ kết nối module 64 30T 30 T 5.4.2 Cấu hình tham số hệ thống: 64 30T 30 T Chương Thiết kế phần mềm 67 30T 30T 6.1 Hệ thống lưu đồ thuật toán 67 30T 30T 6.1.1 Thuật toán chương trình 68 30T 30 T 6.1.2 Thuật tốn xử lý bàn phím 69 30T 30T 6.1.3 Thuật tốn giao tiếp máy tính 70 30T 30 T 6.1.4 Thuật toán kiểm tra kiện cắm thẻ .71 30T 30T 6.1.5 Thuật toán xử lý thẻ 72 30T 30 T 6.1.6 Một số xử lý khác 73 30T 30T 6.2 Phần mềm máy tính giao tiếp với hệ thống 75 30T 30 T Kết luận .77 30T 30 T Tài liệu tham khảo 78 30T Phụ lục 30T Tóm tắt luận văn 30T 30 T Lời mở đầu Ngày nay, thiết bị điện tử hoạt động theo chương trình có lẽ phổ biến đời sống sinh hoạt, công nghiệp nhiều lĩnh vực khác.Chính ngày có nhiều kỹ sư điện tử tổ chức cá nhân nghiên cứu thiết kế sản phẩm dựa họ vi xử lý, vi điều khiển Phổ biến PIC hãng Microchip, 8051 Intel, Atmel, Philip Chip PSoC có lẽ có mặt Việt chậm thời gian, chưa có nhiều quan tâm kỹ sư thiết kế, bạn sinh viên Với mục đích tìm hiểu nghiên cứu chip PSoC để ứng dụng vào việc thiết kế mạch điện tử, tác giả nhận thấy chip PSoC hệ thống hoàn thiện hầu hết thiết kế điều khiển Đặc biệt với trỡ giúp hoàn hảo nhà cung cấp (hãng Cypress) thông qua phần mềm PSoC Designer người thiết kế nhanh chóng để tiếp cận làm chủ Trong đề tài tốt nghiệp này, với mục đích nắm bắt chip PSoC để làm chủ tương lai gần Tác giả thực thiết kế khóa điện tử sử dụng thẻ nhớ thay cho chìa khóa ổ khóa khí thơng thường Với giúp đỡ dẫn nhiệt tình thầy giáo – TS Nguyễn Nam Quân – khoa Điện tử Viễn thông – trường Đại học Bách Khoa Hà nội, tác giả hoàn thành đề tài luận văn với kết thu thỏa mãn yêu cầu đặt Nội dung đề tài luận văn bao gồm: Phần Tổng Quan Chip PSoC Phần Trình bày thiết kế hệ thống khóa điện tử sử dụng thẻ chip Do thời gian thực đề tài có hạn kinh nghiệm tác giả có chưa nhiều, nên đề tài nhiều thiếu sót Tác giả kính góp ý, dẫn vá đánh giá thầy cô Tác giả bày tỏ lời cảm ơn chân thành tới thày giáo TS Nguyễn Nam Quân tất thầy khoa Điện Tử Viễn thơng tồn thể bạn đồng nghiệp giúp đỡ tác giả hoàn thành luận văn Hà Nội, tháng 10 năm 2006 Tác giả Đỗ Bá Thái Phần1 Tổng quan chip PSoC PSoC (Programable System on Chip) – Hệ thống có khả lập trình chíp đơn Giống họ Vi điều khiển khác, PSoC họ với đầy đủ tính chip vi điều khiển Điểm khác biệt lớn PSoC so với số họ Vi điều khiển phổ biến : PIC, MCS51, AVR … khả cấu hình mềm dẻo Do tích hợp sẵn nhiều khối chức từ chức số đến chức tương tự, mà PSoC đảm nhận chức hệ thống điều khiển mà cần chíp đơn Bộ nhớ chương trình Flash ROM nhớ liệu có kích thước tương đối lớn phù hợp với tốn có quy mơ Việc lập trình cho nhớ Flash sử dụng chuẩn giao tiếp ISP Làm việc với chíp PSoC, có lẽ người thiết kế nhận thấy thoải mái với hỗ trỡ tối đa từ nhà sản xuất thông qua phần mềm miễn phí PSoC Designer Rất nhiều hàm chức cấp sẵn thông qua thư viện, khởi tạo cách tự động thiết kế Sẽ linh hoạt việc lập trình việc tích hợp sẵn mơi trường lập trình C PSoC Designer Chương Đặc điểm chung 1.1 Bộ vi xử lý - Bộ vi xử lý thiết kế với cấu trúc Harvard, Hai nhớ chương trình Flash Rom RAm giao tiếp với Vi xử lý hai Bus độc lập - CPU hoạt động nhiều tần số khác từ 93Khz đến 24MHz - Tích hợp nhân bit, ghi tích lũy độ rỗng 32 bit - Tiêu hao công suất thấp - Điện áp hoạt động thấp từ 3V – 5.25 V - … Hình 1.1 Cấu trúc tổng quát chíp PSoC (họ CY8C29x66) 1.2 Các khối tương tự OnChip Tích hợp sẵn bên 12 khối chức tương tự có khả cấu hình mềm dẻo để trở thành khối module như: - ADC từ – 14bits - DAC đến 9bits - Các module khuyếch đại với hệ số khuyếch đại lập trình - Các module so sánh - Các lọc thông thấp (LPF) hay thông dải (BPF) 1.3 Các khối số OnChip Số lượng khối chức số Onchip phụ thuộc vào họ khác nhứ khối họ CY8C27x43 hay 16 khối với họ CY8C29x66 Các khối số cấu hình thành nhiều module chức khác - Các đếm, định thời, điều chế độ rộng xung PWM từ – 32 bits - Các khối truyền thông : RS232, hồng ngoại, khối truyền thông I2C master/slave… 1.4 Khối vào đa chức - Tất chân vào chip cấu hình cách độc lập thông qua hệ thống ghi vào đa chức - Tất chân vào đa chức thực ngắt tới CPU, trạng thái ngắt thay đổi phần mềm 64 5.4.2 Sơ đồ kết nối module Hình 5.18 Các thiết lập kết nối PSoC Designer 5.4.2 Cấu hình tham số hệ thống: Bảng 5.1 Các tham số cấu hình hệ thống Global Resources Power Setting [Vcc/SysClk freq] 5.0V/24MHz CPU Clock SysClk/2 (12MHz) 32K_Select Internal PLL_Mode Disable Sleep_Timer 1Hz VC1=SysClk/N 16 VC2=VC1/N VC3 Source SysClk/1 VC3 Divider 156 SysClk Source Internal 65 SysClk*2 Disable No Analog Power SC On/Ref Low Ref Mux [Vdd/2]+/- BandGap AGndBypass Disable Op-Am Bias Low A_Buff_Power Low SwitchModePump OFF Trip Voltage[LVD (SMP)] 4.81V(5.00V) LVD ThrottleBack Disable Watchdog Enable Enable Disp (LCD Module) LCDPort Port_0 BarGraph Enable I2Cm I2C_Port Port_1 SDA_Pin Port_1_5 SCL_Pin Port_1_7 KeyPad, PC232 (UART) Clock VC3 PC232 Row_2_Input_2 RX Input KeyPad Row_3_Input_2 PC232 Row_2_Outut_0 TX Output KeyPad Row_3_Output_0 TX_Interrupt Mode TXComplete ClockSysnc Sysnc to SysClk RxCmdBuffer Disable RxBufferSize 16 CommandTerminator 13 Param_Delimiter 32 IgnoreCharBelow 32 Enable_BackSpace Disable RX OutPut None RX Clock Output None TX Clock Output None InvertRX Input Normal Light – Unlock (PWM8) Unlock VC1 Clock Light CPU_32_KHz Enable High 66 Row_3_Output_1 Row_1_Output_3 TerminalCountOut None Unlock 50 Period Light 255 Unlock 50 PulseWidth Light 255 CompareType Less Than Interrupt Type Compare True ClockSync Sync to SysClk InvertEnable Normal Timer1, Timer2, Timer3 Clock CPU_32_KHz Capture Low TermialCountOut None CompareOut None Timer1 4098 Period Timer2 16386 Timer3 16384 Timer1 CompareValue Timer2 Timer3 CompareType Less Than Or Equal Interrupt Type Compare True ClockSync Sync to SysClk TC_PulseWidth FullClock InvertCapture Normal _8051_CLKDigInv (Không dùng đến) Input VC1 Output Row_1_Output_1 ClockSysnc Sync to SysClk CompareOut 67 Chương Thiết kế phần mềm 6.1 Hệ thống lưu đồ thuật tốn Tồn phần mềm chương trình điều khiển hệ thống thể hiển lưu đồ thuật tốn gồm có: - Lưu đồ chương trình o Khởi động hệ thống o Thiết lập kiểm tra giá trị mặc định - Lưu đồ giải thuật giao tiếp bàn phím - Lưu đồ giải thuật điều khiển gia tiếp máy tính o Khởi tạo giao tiếp máy tính o Điều khiển trao đổi máy tính hệ thống - Lưu đồ giải thuật kiểm tra kiện cắm thẻ o Kiểm tra kiện cắm thẻ o Xác định tính hợp lệ thẻ o Xác định vị trí cắm thẻ (bên hay bên ngoài) - Lưu đồ giải thuật xử lý thẻ o Xác thực quyền sử dụng o Xử lý truy nhập o Xử lý yêu cầu khác - Lưu đồ thuật toán kiểm soát cửa o Kiểm sốt vị trí cửa o Thiết lập khoảng thời gian chờ mở đóng cửa o Kiểm tra kiện đóng cửa thật hay giả - Lưu đồ thuật toán kiểm soát thống kê thời gian sử dụng thẻ o Kiểm tra thời gian serial thẻ sử dụng để mở cửa o Thời gian đóng cửa sau mở cửa 68 o Kiểm tra người mở cửa có vào hay hay khơng, hay mở cửa sau hay vào - Timer dùng để hiển thị đồng hồ 6.1.1 Thuật tốn chương trình Hình 6.1 Sơ đồ thuật tốn chương trình 69 6.1.2 Thuật tốn xử lý bàn phím Hình 6.2 Sơ đồ thuật tốn module xử lý ngắt phím bấm Các hàm chính: - void KeyPad_ISR(void) - BYTE GetPWD(void) //Xử lý ngắt bàn phím //Hiển thị giá trị ‘* ‘ nhập Password 70 6.1.3 Thuật tốn giao tiếp máy tính Hình 6.3 Sơ đồ thuật tốn module giao tiếp máy tính 71 6.1.4 Thuật tốn kiểm tra kiện cắm thẻ Hình 6.4 Sơ đồ thuật toán module xử lý kiện thẻ Thuật toán kết hợp sử dụng Ngắt GPIO để xác nhận có kiện cắm thẻ, kiện cắm thẻ xác thực hàm ngắt Timer3 Trong hàm ngắt Timer3 xác định xem có thực có thẻ cắm vào ổ đọc thẻ hay khơng, thẻ thẻ hợp lệ hay không hợp lệ, thẻ cắm ổ đọc thẻ hai ổ đọc thẻ indoor outdoor 72 6.1.5 Thuật tốn xử lý thẻ Hình 6.5 Sơ đồ thuật toán module xử lý thẻ 73 6.1.6 Một số xử lý khác - Thuật toán nhập mật từ bàn phím Hình 6.6 Sơ đồ thuật tốn module nhập mật 74 - Thuật toán xác định thời điểm mở/ đóng cửa trạng thái vào Hình 6.7 Sơ đồ thuật tốn module xử lý kiện đóng mở cửa 75 6.2 Phần mềm máy tính giao tiếp với hệ thống Phần mềm máy tính đảm nhiệm chức thu thập thông tin cần thiết từ hệ thông yêu cầu - Thông tin tài khoản (các thẻ sử dụng) o ID Number o Họ tên o Vị trí cơng việc tương tự - Thông tin hoạt động hệ thống o Thời gian sử dụng o Mục đích sử dụng o Người sử dụng Ngồi phần mềm cịn có thêm chức quan trọng khác như: Tạo thẻ sử dụng, định dạng lại nhớ lưu trữ hệ thống, xóa bỏ hệ thống báo cáo hệ thống, xóa bỏ cấm sử dụng thẻ sử dụng… Phần mềm xây dựng dựa ngơn ngữ lập tring Delphi Hình 6.8 Giao diện phần mềm xử lý thẻ 76 Hình 6.9 Giao diện phần mềm quản lý thơng tin tài khoản Hình 6.10 Giao diện phần mềm quản lý sử dụng hệ thống 77 Kết luận Xu sử dụng dòng chíp Vi điều khiển để ứng dụng vào thiết bị điện tử có lẽ phổ biến Chúng ta thấy có mặt chúng thiết bị từ gia dụng cho thiết bị công nghiệp Với nội dung đề tài tốt nghiệp này, tác giả chủ động nghiên cứu, tìm hiểu ứng dụng chíp vi điều khiển PSoC dòng chip tương đối mẻ vào việc thiết kế mạch điện tử Trong trình nghiên cứu tìm hiểu PSoC tác giả nhận thấy dịng chíp mạnh với tích hợp nhiều module để thay hầu hết ngoại vi thơng dụng mà dịng vi điều khiển khác cần phải có thêm có nhu cầu sử dụng Đặc biệt ứng dụng đo lường điều khiển không yêu cầu tốc độ cao có lẽ lựa chọn thật tối ưu Với đề tài tốt nghiệp ứng dụng nhỏ để kiểm tra khẳng định hiểu biết chíp PSoC sau thời gian ngắn tìm hiểu học tập Tuy thơi gian không dài xong với hướng dẫn nhiệt tình thầy giáo TS Nguyễn Nam Quân tác giả hoàn thành đề tài tốt nghiệp với kết tốt Tác giả lần xin chân thành cảm ơn TS Nguyễn Nam Quân toàn thể bạn đồng nghiệp giúp đỡ tác giả hoàn thành luận văn tốt nghiệp 78 Tài liệu tham khảo Tống Văn On , Hoàng Đức Hải “Họ vi điều khiển 8051” Nhà xuất lao động - xã hội (hà nội 2001) Ngô Diên Tập “ Kỹ thuật Vi điều khiển với AVR” Nhà xuất khoa học kỹ thuật (Hà nội 2003) PSoC TM Mixed Signal ArrayFinal Data Sgeet (August 28, 2003) – P P Cypress MicroSystems PSoC TM Designer Integrated Development Environment User P P Guide – Cypress MicroSystems PSoC TM Designer C Language Compiler User Guide – Cypress P P MicroSystems Internet: Diễn đàn dientuvietnam.net WWW.CYPRESS.COM WWW.MAXIM-IC.COM WWW.ATMEL.COM 10 WWW.PHILIP.COM 27TU U27 T ... tâm kỹ sư thiết kế, bạn sinh viên Với mục đích tìm hiểu nghiên cứu chip PSoC để ứng dụng vào việc thiết kế mạch điện tử, tác giả nhận thấy chip PSoC hệ thống hoàn thiện hầu hết thiết kế điều khiển... TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI ĐỖ BÁ THÁI NGHIÊN CỨU TÌM HIỂU CHÍP PSOC ỨNG DỤNG VÀO THIẾT KẾ MẠCH ĐIỆN TỬ LUẬN VĂN THẠC SĨ NGÀNH KỸ THUẬT ĐIỆN TỬ NGƯỜI HƯỚNG DẪN : TS.NGUYỄN NAM QUÂN Hà Nội,... Phần Thiết kế hệ thống khóa điện tử sử dụng thẻ chip điện tử Mục đích thiết kế Với mục đích thực hành kiến thức nội dung lý thuyết trình bày hiểu biết tác giả Ở phần tác giả trình bày thiết kế