Tham khảo tài liệu ''giáo trình phân tích quy trình nghiên cứu phần mềm ứng dụng lập trình chăm sóc cây trồng p6'', khoa học tự nhiên, nông - lâm phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Đồ án tốt nghiệp Nguyễn Thái Học - Lớp TĐH 46 Đầu logic cung cấp dòng 25mA với điện trở treo cao thấp bên Thay đổi dợc ngắt chân Đầu tơng tự cung cấp dòng tới 40mA Đờng đa chức có từ đến 44 tuỳ thuộc vào loại chip 5) Xung nhịp chip lập trình đợc Bộ tạo dao động 24/48 MHz bên trong( Độ xác 2,5%) Có thể lựa chọn dao động lên tới 24MHz Bộ tạo dao động thạch anh 32,768 kHz bên Bộ tạo dao động tốc độ thấp bên sử dụng cho Watchdog Sleep 6) Ngoại vi đợc thiết lập sẵn Bộ định thời Watch dog sleep phục vụ chế độ an toàn chế độ nghỉ Module truyền thông I2C Master I2C Slave tốc độ lên tới 400kHz Module phát điện áp thấp đợc cấu hình ngời sử dụng 7) Công cụ phát triển Phần mềm phát triển miễn phí (PSoCCTM Designer) Bộ lập trình mô với đầy đủ tính Mô tốc độ cao 3.3 Tìm hiểu cấu tróc phÇn cøng chip PSoC A CÊu tróc vi xư lý 1.Bé xư lý trung t©m - CPU Trong chip PSoC xử lý trung tâm CPU đợc gọi với tên M8C Bộ xử lý kiểm soát ghi nội tại, không gian địa tập lệnh nh chế độ địa Các họ chíp PSoC dựa vi xử lý mạnh mẽ bit víi cÊu tróc Harvard (CÊu tróc Harvard lµ cấu trúc mà bus liệu, bus địa tín hiệu điều khiển nhớ chơng trình nhớ liệu độc lập Khoa Cơ Điện - 56 - Tr−êng §HNN I - Hμ Néi §å ¸n tèt nghiƯp Ngun Th¸i Häc - Líp T§H 46 với nhau) Nó có ghi điều khiển hoạt động CPU Những ghi bị tác động lệnh khác Ngời sử dụng truy cập trực tiếp vào ghi thông qua không gian nhớ ghi Các ghi CPU đợc cho bảng sau: Bộ đếm chơng trình ghi16 bit (CPU_PC), cho phép ngời lập trình truy cập trực tiếp vào toàn không gian nhớ chơng trình chíp (16 Kbytes thành viên lớn nhất) Đây không gian nhớ liên tục không cần phải tạo thành trang (no paging) - Thanh ghi chứa (Accumulator) ghi đa mục đích, thờng đợc sử dụng để lu giữ kết lệnh sử dụng chế độ địa nguồn - Thanh ghi số đợc dùng để lu giữ giá trị Offset (độ lệch) chế độ địa chỉ số Tiêu biểu đợc dùng để địa khối liệu bên không gian nhớ d÷ liƯu - Thanh ghi Con trá Stack (Stack Pointer) lu giữ địa đỉnh Stack không gian nhớ liệu Nó bị tác động lệnh nh− PUSH, POP, LCALL, RETI vµ RET Nãi chung lµ tất lệnh có liên quan đến stack phần mềm Nó bị ảnh hởng lƯnh SWAP vµ lƯnh ADD - Thanh ghi cê (Flags) có ba bit trạng thái, bit cờ không - Zero Flag bit[1]; bit cê nhí - Carry Flag bit[2]; bit Supervisory State[3] Bit cho phép ngắt toàn cục- Global Interrupt enable bit[0] đợc dùng phép Khoa Cơ §iÖn - 57 - Tr−êng §HNN I - Hμ Néi Đồ án tốt nghiệp Nguyễn Thái Học - Lớp TĐH 46 cấm toàn ngắt Các cờ bị ảnh hởng lệnh toán học, lệnh logic 2.Ngắt điều khiển ngắt Bộ điều khiển ngắt cho phép đoạn mà ngời lập trình đợc thực có ngắt sinh từ khối chức chip PSoC Mỗi khối số có ngắt riêng cột khối tơng tự có ngắt riêng Mỗi ngắt cho nguồn cấp, chế độ ngủ, xung nhịp thay đổi, ngắt toàn cục cho chân vào đa chức Bảng 4-20: Các ghi điều khiển ngắt Bộ điều khiển ngắt với ghi cho phép ngắt bị vô hiệu hóa đồng thời độc lập víi C¸c ghi cung cÊp mét c¸ch thøc để ngời sử dụng xóa tất ngắt chờ thông báo ngắt, xóa cách độc lập hay riêng biệt thông báo ngắt ngắt chờ Một kỹ thuật phần mềm đợc cung cấp phép ngời lập trình thiết lập ngắt cách riêng biệt Thiết lập ngắt kỹ thuật mạnh mẽ hữu ích cho việc phát triển mà nguồn, mà Khoa Cơ Điện - 58 - Trờng ĐHNN I - H Nội Đồ án tốt nghiệp Nguyễn Thái Học - Lớp TĐH 46 đủ hệ thống phần cứng hoàn chỉnh để sinh ngắt thực Bảng 4-21 : Bảng vector ngắt CY8C27xxx Các cổng vào đa chức Cổng vào đa chức cung cấp cho CPU giao diện với bên Chúng đòi hỏi số lợng lớn ghi cấu hình để hỗ trợ cho nhiều chế độ hoạt động vào / bao gồm số tơng tự Bảng 4-22: Các ghi vào đa chức Chú ý: kí tự x sau dấu phẩy trờng địa có nghĩa cổng vào có riêng biệt ghi Mỗi cổng ghi có địa riêng Nhng ®Ĩ dƠ hiĨu th× ta chØ xÐt chung cho tr−êng hợp tổng quát Các cổng vào đa chức có độ rộng bit/ cổng Mỗi mét cỉng vµo/ra bao gåm khèi GPIO gièng hƯt Mỗi khối GPIO Khoa Cơ Điện - 59 - Trờng ĐHNN I - H Nội Đồ án tốt nghiệp Nguyễn Thái Học - Lớp TĐH 46 đợc kết nối với bit có số thứ tự tơng ứng địa ghi Bởi vậy, ghi bảng ghi thực chØ dµnh cho mét cỉng (bao gåm khèi GPIO) Trong vị trí bit rõ khối GPIO khối đợc điều khiển với cổng vào Mỗi khối GPIO đợc sử dụng cho kiểu vào sau: - Vào số (Vào số điều khiển phần mềm) - Vào toàn cục (Vào cho khối PSoC số) - Vào tơng tự (Vào cho khối PSoC tơng tự) chân vào có vài chế độ hoạt động nh khả tạo ngắt Trong tất chân đợc nối đờng vào số vài chân lại không đợc kết nối với chức vào khối tơng tự bus toàn cục * Vào số: Một chức hoạt động cổng vào đa chức cho phép CPU gửi thông tin chip lấy thông tin từ bên vào Điều đợc thực nhờ ghi liệu cổng (Port Data Register PRTxDR) Việc viết liệu vào ghi PRTxDR lu lại trạng thái liệu, bit cho chân GPIO Trong chế độ thờng (standard non-bypass) chân GPIO lặp lại bit liệu Nghĩa ta viết giá trị vào ghi liệu PRTxDR đầu cổng tơng ứng có giá trị giống nh ghi liệu Điện áp thực chân phụ thuộc vào chế độ hoạt động chân tải bên đợc nối vào chân (Xem cấu trúc chân vào để hiểu rõ thêm) CPU đọc giá trị cổng cách đọc giá trị ghi PRTxDR Khi CPU đọc giá trị PRTxDR giá trị điện áp thời chân vào đợc chuyển đổi sang giá trị logic đợc trả cho CPU Hoạt động đọc giá trị điện áp chân vào đọc giá trị chốt ghi PRTxDR * Vào toàn cục (Global IO) Các cổng vào đa chức đợc nối liền với khối số thông qua vào toàn cục Tính vào toàn Khoa Cơ Điện - 60 - Trờng ĐHNN I - H Nội Đồ án tốt nghiệp Nguyễn Thái Học - Lớp TĐH 46 cục cổng đợc mặc định trạng thái tắt Để sử dụng tính có thông số cần phải đợc thay đổi Thứ để cấu hình cho chân GPIO hoạt động nh đầu vào toàn cục bit lựa chọn cổng toàn cục cần phải đợc set để yêu cầu GPIO sử dụng ghi PRTxGS Thứ hai chế độ hoạt động GPIO cần phải đợc đa trạng thái cao trở Để cấu hình cho chân GPIO hoạt động nh đầu toàn cục bit lựa chọn cổng toàn cục cần phải đợc set lần Nhng trờng hợp chế độ hoạt động GPIO trừ chế độ cao trở *Vào tơng tự: Tín hiệu tơng tự đợc truyền dẫn CPU chân chíp thông qua chân AOUT khối Chân đợc nối với khối thông qua điện trở (khoảng 300 ohms) Chân vào đa chức cần phải đa chế độ cao trở trờng hợp Các ngắt khối GPIO Mỗi khối GPIO đợc cấu hình cách độc lập cho khả ngắt Các khối GPIO đợc cấu hình cho phép lựa chọn ngắt cho chân lựa chọn kiểu ngắt phù hợp Nghĩa khối sinh ngắt chân mức logic cao, thấp thay đổi so với lần đọc trớc Các khối có đầu ngắt riêng (INTO), đợc nối với khối GPIO khác kiểu nối dây loại OR Do tất chân đợc nối víi theo kiĨu OR ®Ĩ sư dơng chung mét hệ thống ngắt GPIO Nên ngắt GPIO đợc chia sẻ cho nhiều chân vào trình phục vụ ngắt ngời sử dụng cần phải sử dụng vài kỹ thuật đợc thiết kế sẵn để định xem chân đợc chọn nguồn sinh ngắt Sử dụng ngắt GPIO yêu cầu bớc sau: Đặt chế độ ngắt cho khối chân GPIO Mở bit ngắt cho khối chân GPIO Mở bit mặt nạ ngắt cho ngắt GPIO Xác nhận bit ngắt toàn cục GIE Phạm vi khối GPIO, xác nhận đờng ngắt phụ thuộc vào bit Khoa Cơ Điện - 61 - Trờng ĐHNN I - H Nội .Đồ án tốt nghiệp Nguyễn Thái Học - Lớp TĐH 46 cho phép ngắt trạng thái chân quan hệ với lựa chọn chế độ ngắt cấp độ chip, trạng thái tự nhiên cổng nối dây OR, ngắt GPIO ngắt nhạy theo sờn hay ngắt nhạy theo mức Chúng đợc lựa chọn nhạy theo sờn nhng nhạy theo mức phải đợc tháo bỏ khỏi đờng ngắt cổng nối dây OR Nếu ngắt GPIO xác nhận, ngắt GPIO đợc sinh bit cho phép ngắt chân GPIO đợc set chân GPIO chuyển sang cao thấp cách thích hợp Một điều xảy ra, đờng ngắt INTO đợc kéo xuống thấp để xác nhận ngắt GPIO (Giả định điều kiện sinh ngắt hệ thống cho phép, nh cho phép ngắt GPIO toàn cục cho phép ngắt toàn cục) Lu ý cho phép ngắt chân xác nhận đầu ngắt INTO lập tức, nh điều kiện chế độ ngắt đà sẵn sàng xuất chân Một INTO đợc kéo xuống mức thấp, tiếp tục giữ INTO mức thấp điều kiện sau thay đổi: - Bit cho phép ngắt chân đợc xóa - Điện áp chân chuyển đổi sang trạng thái đối lập - Trong chế độ thay đổi ngắt, ghi liệu đợc đọc, thiết lập mức độ ngắt nội sang trạng thái đối lập - Chế độ ngắt bị thay đổi trạng thái thời chân không sinh ngắt Khi điều kiện xảy đầu INTO đợc giải phóng Tại thời điểm này, chân khác (hoặc chân này) xác nhận đầu ngắt nó, kéo đờng chung xuống thấp để xác nhận ngắt Lu ý chân xác nhận đờng ngắt INTO chân khác lại xác nhận đầu ngắt chân trớc giải phóng đờng ngắt mà chân thứ hai đà điều khiển đầu ngắt INTO thay đổi đợc phát đầu ngắt INTO Tức ngắt đợc xác nhận ngắt GPIO Chú ý, sử dụng AND/OR trạng thái chân GPIO bit cho phép ngắt toàn cục để nắm bắt đợc toàn ngắt cổng nối dây OR khối GPIO Khoa Cơ Điện - 62 - Trờng ĐHNN I - H Nội Đồ án tốt nghiệp Nguyễn Thái Học - Líp T§H 46 HƯ thèng khèi PSoC sè CÊu trúc hệ thống số Hình - 1: Sơ đồ khối mô tả cấu trúc khối số PSoC ã Những ngoại vi đợc tạo khối PSoC số x Các định thời 8,16,24,32-bit với đặc điểm sau: Hình - 2: Sơ đồ nguyên lý định thời - Độ rộng ghi 8, 16, 24, 32 bit, sư dơng 1,2,3,4 khèi PSoC theo thứ tự - Xung nhịp nguồn lên tới 48 MHz - Tự động nạp lại chu kỳ đếm xong - Khả chụp (capture) tới 24 MHz - Đầu đếm kết thúc đợc sử dụng nh đầu vào xung nhịp cho chức số tơng tự khác - Lựa chọn chế độ ngắt đếm kết thúc đếm đạt giá Khoa Cơ Điện - 63 - Trờng ĐHNN I - H Nội Đồ án tốt nghiệp Nguyễn Thái Học - Lớp TĐH 46 trị đặt trớc Các Module định thời đếm lùi với chu kỳ lập trình đợc, có khả chụp giữ Xung nhịp tín hiệu cho phép đợc lựa chọn từ nguồn từ xung nhịp hệ thống Sau đà khởi động, Bộ định thời hoạt động liên tục tự động tải chu kỳ từ ghi chu kỳ đếm kết thúc Các kiện chụp giữ giá trị đếm thời Timer cách xác nhận sờn xung tín hiệu chụp giữ đầu vào Trong chu kỳ, định thời so sánh giá trị đếm với giá trị so sánh đặt ghi compare ®Ĩ kiĨm tra ®iỊu kiƯn “Less than hay Less than or Equal To Các ngắt đợc sinh dựa tín hiệu đếm kết thúc điều kiện so sánh x Các đếm 8, 16,24,32 bit với đặc điểm sau: - Độ rộng ghi đếm 8,16,24,32 bit, tơng ứng chiếm 1,2,3,4 khối PSoC - Xung nhịp lên tới 48 MHz - Tự động tải lại chu kỳ đếm kết thúc - Độ rộng xung lập trình đợc - Có đầu vào cho phép/không cho phép hoạt động đếm liên tục Hình - 3: Sơ đồ nguyên lý đếm x Bộ điều chế độ rộng xung 8,16 bit với đặc điểm sau: Khoa Cơ Điện - 64 - Trờng ĐHNN I - H Nội Đồ án tốt nghiệp Nguyễn Thái Học - Lớp TĐH 46 - Bộ điều chế độ rộng xung bit hc 16 bit sư dơng hc khối số - Nguồn xung nhịp lên tới 48MHz - Tự động nạp lại giá trị điều chế kÕt thóc mét chu kú ®iỊu chÕ xung - Có thể lập trình độ rộng xung - Mở khóa ngắt điều chế hoạt động - Ngắt lựa chọn theo sờn dơng đầu theo giá trị đếm cuối - Đầu vào xung nhịp đầu vào cho phép đợc lựa chọn từ nhiều nguồn khác - Đầu đợc nối tới chân vào đợc sử dụng nội bên chíp PSoC x Bé ®iỊu chÕ ®é réng xung 8,16 bit kết hợp với dải an toàn: Chức tạo dải an toàn phát tín hiệu hai đầu đầu phụ khối Chức sinh xung nhịp không gối lên Hai pha xung nhịp không mức cao thời điểm khoảng thời gian hai pha đợc gọi dải an toàn Độ rộng dải an toàn đợc định giá trị đặt trớc ghi Nếu nguồn xung nhịp PWM, tạo hai đầu PWM với đầu đảm bảo không gối lên Một tín hiệu tích cực đầu vào Kill khóa hai đầu lËp tøc x Bé t¹o d·y CRC phơc vơ viƯc kiểm tra lỗi - Khả tạo dÃy từ đến 16 bit - Đầu vào xung nhịp lên tới 48 MHz - Có thể lập trình đa thức mẫu - Đầu vào nối tiếp, đầu song song Khoa Cơ Điện - 65 - Trờng ĐHNN I - H Nội Đồ án tốt nghiệp Nguyễn Thái Học - Lớp TĐH 46 Hình - 4: Sơ đồ nguyên lý tạo dÃy CRC x Bộ truyền thông không đồng UART, TX, RX với đặc điểm: - Bộ nhận truyền tín hiệu không đồng - Định dạng liệu tơng thích với định dạng liệu RS-232 - Tỷ số xung đồng lên tíi Mbit/s - Khung d÷ liƯu bao gåm bit Start, bit chẵn lẻ (lựa chọn) bit Stop - Ngắt ghi nhận đầy (lựa chọn) đệm truyền rỗng - Phát chẵn lẻ, khung tải, khung báo lỗi - Các chức phát thu mức cao Ngoài số ngoại vi số khác PSoC nh: Bộ trun th«ng SPI Master, SPI Slave… HƯ thèng khèi PSoC t−¬ng tù CÊu tróc cđa hƯ thèng t−¬ng tù Khoa Cơ Điện - 66 - Trờng ĐHNN I - Hμ Néi ... sử dụng xóa tất ngắt chờ thông báo ngắt, xóa cách độc lập hay riêng biệt thông báo ngắt ngắt chờ Một kỹ thuật phần mềm đợc cung cấp phép ngời lập trình thiết lập ngắt cách riêng biệt Thiết lập. .. GPIO đợc chia sẻ cho nhiều chân vào trình phục vụ ngắt ngời sử dụng cần phải sử dụng vài kỹ thuật đợc thiết kế sẵn để định xem chân đợc chọn nguồn sinh ngắt Sử dụng ngắt GPIO yêu cầu bớc sau: Đặt... - Điện áp chân chuyển đổi sang trạng thái đối lập - Trong chế độ thay đổi ngắt, ghi liệu đợc đọc, thiết lập mức độ ngắt nội sang trạng thái đối lập - Chế độ ngắt bị thay đổi trạng thái thời