Danh mục sản phẩm
Cần biết

Ưu đãi: Giảm 10% khi mua từ 3 sản phẩm

Nhận Linkdown 
Ngay sau khi chuyển khoản.

Lưu trữ và bảo mật
Thông tin khách hàng được bảo mật tuyệt đối

Thanh Toán Sau 
Quý khách nhận hàng tận tay trước khi trả tiền

Hỗ Trợ Online
♦ Mr Thiện : 038 811 4282
♦ Mail: tivicad@gmail.com

Cẩm nang STM32: Căn bản cần biết (tập 1)

Lượt xem: 16123 Mã sản phẩm: MSP-5043682971
Tình trạng: Còn hàng
160.000đ
Số lượng: Mua ngay

Gọi để được tư vấn: 038.811.4282

Mua trực tiếp tại: 163 Nguyễn Bá Tòng, P11, Tân Bình, TP.HCM

 

KHÁCH HÀNG Ở NƯỚC NGOÀI MUA HÀNG NHƯ THẾ NÀO?

Bước 1: Thanh toán tiền (bằng những cách sau)

  • Thanh toán bằng Paypal
  • Nhờ người trong tại Việt Nam thanh toán qua ngân hàng hoặc đến trực tiếp địa chỉ trung tâm thanh toán

Bước 2: Công ty sẽ gửi File tài liệu (Đối với sách) hoặc File Video (Đối với sản sản phẩm DVD) qua Email của người nhận (Ở nước ngoài)

 

► Lưu ý: Mọi thắc mắc cũng như liên lạc để thanh toán vui lòng liên lạc đến Email: tivicad@gmail.com

Cẩm nang STM32: Căn bản cần biết (tập 1)

Các thiết bị ARM Cortex được quan tâm nhiều hiện nay bởi vì các thiết bị ARM được tìm thấy ở mọi nơi. Các sản phẩm chứa các thiết bị ARM có thiết kế từ các hệ thống nhúng vi điều khiển nhỏ đến điện thoại di động và các máy chủ lớn hơn chạy Linux. ARM cũng có mặt ở những thiết bị cao hơn trong trung tâm dữ liệu. Đây là tất cả những lý do nên làm quen với công nghệ ARM.

Với những công nghệ khác nhau, từ vi điều khiển đến máy chủ, câu hỏi phát sinh: "Tại sao cần phải nghiên cứu lập trình thiết bị nhúng? Tại sao không tập trung vào các hệ thống người dùng chạy Linux, giống như Raspberry Pi?”

Câu trả lời đơn giản là các hệ thống nhúng hoạt động tốt trong các tình huống khó xử lý cho các hệ thống lớn hơn. Chúng thường được sử dụng trong thế giới thực. Ví dụ, chúng giao tiếp giữa thế giới thực và hệ thống máy tính để bàn. Bàn phím sử dụng MCU chuyên dụng (bộ vi điều khiển) để quét các công tắc chính của bàn phím và báo cáo công việc nhấn phím vào hệ thống máy tính để bàn. Điều này không chỉ làm giảm số lượng dây cần thiết mà còn giải phóng CPU chính khỏi việc tính toán hiệu suất cao của nó với nhiệm vụ đơn giản để thông báo việc nhấn phím.

Các ứng dụng khác bao gồm các hệ thống nhúng trong các nhà máy để theo dõi nhiệt độ, bảo mật và phát hiện cháy. Các hệ thống nhúng độc lập tiết kiệm tiền và khởi động ngay lập tức. Cuối cùng, kích thước nhỏ của MCU làm cho nó trở thành sự lựa chọn tốt nhất trong các máy bay không người lái, nơi khối lượng là yếu tố quan trọng.

Sự phát triển của các hệ thống nhúng theo truyền thống yêu cầu nguồn lực từ hai ngành:

•        Kỹ sư phần cứng

•        Người phát triển phần mềm

Thông thường, một người được giao nhiệm vụ hoàn thảnh sản phẩm cuối cùng. Kỹ sư phần cứng chuyên thiết kế các mạch điện tử liên quan, nhưng bước cuối cùng sản phẩm yêu cầu phần mềm. Điều này có thể là một thách thức bởi vì người viết phần mềm thường thiếu hiểu biết về điện tử trong khi các kỹ sư thường thiếu chuyên môn về phần mềm. Để tiết kiệm chi phí và thời gian, kỹ sư điện tử thường kim luôn kỹ sư phần mềm.

Không có gì bất lợi khi một người thực hiện cả hai chuyên ngành miễn là có các kỹ năng cần thiết. Đó là nội dung cuốn sách này muốn thực hiện.

 STM32F103C8T6

Thiết bị được sử dụng trong cuốn sách này là STMicroelectronics STM32F103C8T6. Thiết bị này gồm nhiều phần, vì vậy cần chia nhỏ nó:

• STM32 (nền tảng STMicroelectronics)

• F1 (gia đình thiết bị)

• 03 (phân khu của họ thiết bị)

• C8T6 (hiển thị ảnh hưởng đến số lượng SRAM, bộ nhớ flash, …)

Các thiết bị này sử dụng đường dẫn 32-bit và mạnh hơn đáng kể so với các thiết bị 8-bit.

F103 là một nhánh (F1 + 03) của thiết bị STM32. Phần này quyết định CPU và khả năng ngoại vi của thiết bị.

Cuối cùng, C8T6 xác định thêm khả năng của thiết bị, như dung lượng bộ nhớ và tốc độ xung.

Thiết bị STM32F103C8T6 đã được chọn sử dụng trong cuốn sách này vì những yếu tố sau:

• Chi phí thấp (~2 USD trên eBay)

• Tính thông dụng (eBay, Amazon, AliExpress, …)

• Khả năng nâng cao

• Thiết kế

STM32F103C8T6 có chi phí thấp cho sinh viên và người yêu thích nó để khám phá thiết bị ARM Cortex-M3. Thiết bị này có sẵn và cực kỳ tiềm năng. Cuối cùng, thiết kế của PCB nhỏ cho phép hàn chân vào các cạnh và cắm vào breadboard. Breadboard là board thuận tiện nhất để thực hiện các thí nghiệm.

MCU trên PCB (Hình 1-1) được gọi là "Blue Pill", lấy cảm hứng từ bộ phim The Matrix. Có một số PCB cũ hơn có màu đỏ và được gọi là "Red Pill". Vẫn còn những loại khác, màu đen được gọi là "Black Pill". Trong cuốn sách này, sử dụng Blue Pill.

Hình 1-1.  STM32F103C8T6 PCB với các chân đề hàn, thường được gọi là "Blue Pill"

Chi phí thấp có một lợi thế khác - nó cho phép sở hữu một số thiết bị cho các dự án liên quan đến truyền thông CAN, ví dụ cuốn sách này khám phá truyền thông CAN bằng cách sử dụng ba thiết bị được kết nối bằng một bus thông thường.

Sự hỗ trợ của thiết bị ngoại vi của STM32F103 bao gồm:

• Cổng GPIO 4 x 16 bit (hầu hết là dung sai 5 volt)

• 3 x USART (Bộ thu / phát đồng bộ / không đồng bộ chung)

• 2 x bộ điều khiển I2C

• 2 x bộ điều khiển SPI

• 2 x ADC (Bộ chuyển đổi số tương tự)

• 2 x DMA (bộ điều khiển địa chỉ bộ nhớ trực tiếp)

• 4 x đồng hồ

• xem giờ cặp

• 1 x bộ điều khiển USB

• 1x bộ điều khiển CAN

• 1 x máy phát điện CRC

• RAM tĩnh 20K

• Thẻ nhớ FLASH 64K (hoặc 128K)

• CPU ARM Cortex M3, xung tối đa 72 MHz

Tuy nhiên, có một số hạn chế. Ví dụ, bộ điều khiển USB và CAN không thể hoạt động cùng một lúc. Các thiết bị ngoại vi khác có thể khác với các chân I / O được sử dụng. Hầu hết sự khác nhau giũa các chân được quản lý thông qua cấu hình AFIO (Đầu ra chức năng thay thế), cho phép các chân khác nhau được sử dụng cho chức năng của thiết bị ngoại vi.

Trong cấu hình ngoại vi, một số xung riêng biệt có thể được bật riêng để điều chỉnh mức sử dụng năng lượng. Khả năng tiên tiến của MCU làm cho nó phù hợp để nghiên cứu.

Thẻ nhớ flash được sử dụng ở 64K byte, nhưng có thể thấy rằng nó hỗ trợ 128K. Điều này được đề cập trong Chương 2 và cho phép các ứng dụng tốt được tận dụng vào thiết bị.

FreeRTOS

Không giống như dòng chip AVR phổ biến (hiện thuộc sở hữu của Microchip), gia đình STM32F103 có đủ SRAM (RAM tĩnh) để chạy thoải mái FreeRTOS (freertos.org). Có quyền truy cập vào một RTOS (hệ điều hành thời gian thực) cung cấp một số lợi thế, bao gồm

• Đa nhiệm ưu tiên;

• Hàng đợi;

• Mutexes và semaphores; và

• phần mềm hẹn giờ.

Lợi thế đặc biệt là khả năng đa nhiệm. Nó giúp giảm bớt đáng kể gánh nặng của thiết kế phần mềm. Nhiều dự án Arduino tiên tiến được nạp liệu bởi việc sử dụng các máy chủ với một mô hình vòng lặp sự kiện. Mỗi lần thông qua vòng lặp, phần mềm phải thăm dò ý kiến ​​cho dù một sự kiện đã xảy ra và xác định thời gian cho một số hành động. Điều này làm cho quản lý các biến trạng thái trở nên phức tạp và dẫn đến lỗi lập trình. Ngược lại, đa nhiệm ưu tiên cung cấp các nhiệm vụ điều khiển riêng biệt, thực hiện rõ ràng chức năng độc lập của chúng. Đây là một dạng trừu tượng của phần mềm đã được chứng minh.

FreeRTOS cung cấp đa nhiệm ưu tiên, tự động chia sẻ thời gian CPU giữa các tác vụ được định cấu hình. Tuy nhiên, các nhiệm vụ độc lập làm thêm một số nhiệm vụ cho việc tương tác một cách an toàn giữa chúng. Đây là lý do tại sao FreeRTOS cũng cung cấp hàng đợi tin nhắn, semaphores, mutexes và nhiều thứ khác để quản lý an toàn.

 libopencm3

Phát triển code cho các ứng dụng MCU có thể được yêu cầu. Một phần của yêu cầu này đang phát triển với “bare metal” của thiết bị này. Điều này bao gồm tất cả các thanh ghi ngoại vi chuyên dụng và địa chỉ của chúng. Ngoài ra, nhiều thiết bị ngoại vi yêu cầu một "điệu nhảy" nhất định để khiến chúng sẵn sàng để sử dụng.

Đây là trang chủ của libopencm3 (libopencm3.org). Nó không chỉ xác định địa chỉ bộ nhớ cho các địa chỉ đăng ký ngoại vi, mà nó còn định nghĩa các macro cho các hằng số đặc biệt cần thiết. Cuối cùng, thư viện bao gồm các hàm C đã được kiểm tra để tương tác với các thiết bị phần cứng ngoại vi.

Không có Arduino

Không có code Arduino nào được trình bày trong cuốn sách này. Arduino phục vụ mục đích của nó khá tốt, cho phép học sinh nghiên cứu thế giới MCU mà không cần biết trước. Cuốn sách này nhắm đến mục tiêu xa hơn môi trường Arduino bằng cách sử dụng một chế độ chuyên nghiệp phát triển độc lập với các công cụ Arduino.

Nếu không có Arduino, không có "cổng kỹ thuật số 10." Thay vào đó, làm việc trực tiếp với một cổng MCU và tùy chọn một chân. Ví dụ, thiết bị Blue Pill được sử dụng trong cuốn sách này có đèn LED tích hợp trên cổng C, là chân 13. Hoạt động trực tiếp với các cổng cho phép hoạt động I / O với tất cả 16 chân cùng một lúc khi cần.

 Không có IDE

Có một số môi trường IDE dựa trên hệ điều đành Windows có sẵn nhưng IDE thay đổi các thư viện liên quan của chúng theo thời gian. Lợi thế của IDE đã cho thường bị loại bỏ khi IDE và hệ điều hành nó chạy khi thay đổi.

Cuốn sách này phát triển các dự án dựa trên các công cụ và thư viện nguồn mở sau:

• gcc / g ++ (bộ sưu tập trình biên dịch GNU: nguồn mở)

• tạo (GNU binutils: open sourced)

• libopencm3 (thư viện: nguồn mở)

• FreeRTOS (thư viện: mã nguồn mở và miễn phí cho mục đích thương mại)

Với thiết bị này, các dự án trong cuốn sách này sẽ vẫn có thể sử dụng được lâu sau khi mua cuốn sách này. Hơn nữa, nó cho phép người dùng Linux, FreeBSD và MacOS — ngoài những người sử dụng nền tảng Windows — để sử dụng cuốn sách này. Nếu sử dụng Windows, có thể tải xuống và cài đặt môi trường Cygwin (www.cygwin.com) vì môi trường giống như Linux được giả thiết cho dự án xây dựng bản demo.

Tất cả các dự án được trình bày sử dụng GNU (GNU không phải là Unix) đều tạo ra tiện ích, cung cấp một số hàm được xây dựng với thời gian tối thiểu. Nếu các bản được cung cấp trong cuốn sách này có lỗi, thì hãy đảm bảo sử dụng lệnh tạo GNU, đặc biệt là trên FreeBSD. Một số hệ thống cài đặt GNU làm gmake.

Framework Phát triển

Mặc dù gcc, libopencm3 và FreeRTOS có thể hoạt động cùng nhau, nhưng nó đòi hỏi sự cân sức của cấu tạo và chế độ làm việc.

Thay vì làm công việc tẻ nhạt này, có một framework phát triển có sẵn miễn phí từ github.com để tải xuống. Framework này tích hợp libopencm3 với FreeRTOS. Cũng được cung cấp để tạo các tệp cần thiết để xây dựng toàn bộ chuỗi dự án cùng một lúc hoặc từng dự án riêng lẻ. Cuối cùng, có một số thư viện nguồn mở có thể rút ngắn thời gian phát triển của các ứng dụng mới. Framework này có thể tải xuống tại github.com hoặc tải xuống code riêng của cuốn sách.

 Giả định

Cuốn sách này dành cho những ai muốn vượt ra ngoài kinh nghiệm Arduino. Nó dành cho những ai yêu thích, nhà sản xuất và kỹ sư. Các phần mềm được phát triển trong cuốn sách này sử dụng ngôn ngữ lập trình C, vì vậy nếu đã biết cách lập trình C thì sẽ tốt hơn. Tương tự như vậy, một số kiến ​​thức điện tử kỹ thuật số cơ bản được giả định là liên quan đến các giao diện ngoại vi do thiết bị cung cấp.

Thiết bị STM32 có thể là một thách thức để cấu hình và vận hành chính xác. Phần lớn thách thức này là kết quả của cấu hình tệ của các thiết bị ngoại vi. Mỗi thiết bị phụ thuộc vào một xung, phải được kích hoạt và ước lượng được cấu hình. Một số thiết bị bị ảnh hưởng bởi cấu hình xung ngược. Cuối cùng, mỗi thiết bị ngoại vi phải được kích hoạt và được cấu hình để sử dụng.

Những người yêu thích và nhà sản xuất không cần phải tìm các cuốn sách khó để đọc. Ngay cả khi bị thách thức, nó vẫn có thể xây dựng và chạy từng thí nghiệm của dự án. Khi kiến ​​thức và sự tự tin được xây dựng, mỗi người đọc có thể phát triển các chủ đề được đề cập. Lời khuyên là tất cả độc giả nên sáng tạo các dự án được trình bày và chạy thử nghiệm thêm. Framework được cung cấp cũng sẽ cho phép tạo các dự án mới với nỗ lực tối thiểu.

Những thứ cần thiết

Có một số thiết bị cần sử dụng trong các dự án của cuốn sách. Số một trong danh sách là thiết bị Blue Pill (xem Hình 1-1). Nên mua loại có các chân đề hàn vào PCB để dễ dàng sử dụng thiết bị trên breadboard.

Chương 18–19 sử dụng ba thiết bị Blue Pill giao tiếp với nhau qua một bus CAN. Nếu muốn thực hiện các thí nghiệm đó, hãy đảm bảo có được ít nhất ba thiết bị.

 Thiết bị lập trình ST-Link V2

Thiết bị thiết yếu tiếp theo là bộ điều hợp lập trình, cần mua loại “V2”.

Hầu hết các loại linh liện sẽ bao gồm bốn dây có thể tháo rời để kết nối thiết bị với thiết bị STM32. Hình 1-2 minh họa lập trình USB, có thể sử dụng được từ Windows, Raspberry Pi, Linux, MacOS và FreeBSD.

Hình 1-2. Bộ lập trình và cáp ST-Link V2

Thiết bị STM32F103C8T6 có thể được lập trình theo nhiều cách, nhưng cuốn sách này sẽ chỉ sử dụng trình lập trình USB ST-Link V2. Nó giúp đơn giản hóa mọi thứ khi thực hiện phát triển dự án và cho phép gỡ lỗi từ xa.

Breadboard

Một breadboard là cần thiết để làm thí nghiệm. Nhiều dự án trong cuốn sách này nhỏ cần không gian cho một thiết bị Blue Pill và một số đèn LED hoặc chip. Tuy nhiên, các thí nghiệm khác, như thí nghiệm trong Chương 18–19, sử dụng ba thiết bị giao tiếp với nhau qua một bus CAN.

Cần có một breadboard đủ chỗ cắm bốn thiết bị. Ngoài ra, có thể mua bốn breadboard nhỏ, mặc dù điều này ít thuận tiện hơn.

Hình 1-3 minh họa breadboard sử dụng trong cuốn sách này. Nó không phải đủ lớn, nhưng có các đường nối điện ở đầu và cuối mỗi dải. Các đường này được khuyến khích, vì nó giúp giảm bớt hệ thống dây điện.

Hình 1-3. Một breadboard với các đường nối được cung cấp

Dây điện DuPont

Nhiều người dùng không để ý nhiều về hệ thống dây điện của breadboard, nhưng dây DuPont có thể tạo ra một sự khác biệt rất lớn. Có thể tự cắt và tuốt dây nhưng nó bất tiện và mất thời gian. Sẽ thuận tiện hơn khi có sẵn một hộp dây điện. Hình 1-4 minh họa một số dây dẫn DuPont.

Hình 1-4. Dây điện DuPont

Tụ Bypass 0,1 uF

Có một số dự án trong cuốn sách cần sử dụng tụ điện. Hình 1-5 chứa tụ Bypass 0,1uF là linh kiện có màu vàng trong hình.

Hình 1-5. Breadboard với STM32F103C8T6 và tụ Bypass 0,1uF được cắm trên các đường nối.

Bộ chuyển đổi USB TTL

Thiết bị này rất cần thiết cho một số dự án trong cuốn sách này. Hình 1-6 minh họa một loại của thiết bị này. Bộ chuyển đổi này được sử dụng để truyền dữ liệu đến máy tính để bàn / máy tính xách tay. Nếu không có màn hình hiển thị, nó cho phép giao tiếp thông qua một liên kết nối tiếp ảo (qua USB) đến một chương trình điểm mút.

Hình 1-6. Cáp chuyển đổi USB (TTL)

Đây là thiết bị 5V thông thường và tương thích TTL. Tuy nhiên, lưu ý rằng một trong những tính năng của dòng thiết bị STM32F103 là nhiều chân GPIO có dung sai 5 volt, mặc dù MCU hoạt động với nguồn + 3,3 volt. Điều này cho phép sử dụng các bộ chuyển tiếp TTL này mà không gây hại. Các thiết bị cần thiết khác có thể hoạt động với nguồn 3,3-volt hoặc có thể chuyển đổi giữa 5 và 3,3 volt.

Bộ nguồn

Hầu hết các dự án được trình bày chỉ hoạt động tốt với đầu ra nguồn của bộ chuyển đổi USB hoặc TTL. Nhưng có một số dự án có thể cần một bộ đổi nguồn. Hình 1-7 minh họa một bộ biến đổi tốt để cung cấp điện cho breadboard.

Hình 1-7. Một nguồn cung cấp điện breadboard và bộ chuyển đổi 7.5 VDC

MB102 khá thuận tiện vì nó có thể chuyển đổi để cung cấp điện 3,3 volt hoặc 5 volt. Ngoài ra, nó bao gồm nút bật / tắt nguồn.

Bộ chuyển đổi thường để cung cấp nguồn điện đầu vào. Trong khi MB102 cấp nguồn lên đến 12 volt đầu vào, hầu hết 9 bộ chuyển đổi VDC có điện áp mạch mở gần 13 vôn hoặc nhiều hơn.

Bộ sạc điện thoại Ericsson cũ sử dụng 7,5 VDC ở 600 mA. Nó đo một điện áp không tải ở 7.940 volt. Nó gần với các đầu ra 5 và 3,3 volt hơn MB102 sẽ điều chỉnh.

Các linh kiện nhỏ

Các linh kiện nhỏ cần phải có là đèn LED và điện trở để sử dụng cho các dự án. Hình 1-8 cho thấy các đèn LED và một điện trở SIP-9.

Hình 1-8. Bộ đèn LED 5 mm và một điện trở SIP-9 ở phía dưới

Thông thường một đèn LED sử dụng dòng điện khoảng 10 mA cho độ sáng bình thường. Đèn LED nhỏ hơn chỉ cần dòng điện từ 2 đến 5 mA. Với điện áp cung cấp gần 3,3 volt, vì vậy cần có điện trở khoảng 220 Ω để giới hạn dòng điện (220 ohms giới hạn dòng điện đến mức tối đa khoảng 7 mA).

Một loại điện trở khác đó là điện trở SIP-9. Hình 1-9 minh họa sơ đồ bên trong cho điện trở này. Ví dụ, nếu làm sáng tám đèn LED, cần có tám điện trở đơn cho mỗi LED, cần được nối dây và chiếm nhiều không gian breadboard. Nhưng nếu sử dụng điện trở SIP-9 có kết nối chung cả tám điện trở thì sẽ tiện hơn, tiết kiệm dây điện và giảm sai sót trong quá trình nối dây.

Hình 1-9. Sơ đồ bên trong của điện trở SIP-9

  Tóm lược

Chương này đã giới thiệu các thiết bị chính sẽ xuất hiện trong cuốn sách này. Chương 2: sẽ hướng dẫn các bước cài đặt phần mềm cần thiết. Khi đã thực hiện qua các bước đơn giản, nhàm chán nhưng cần thiết thì làm các dự án sẽ de74 dàng hơn.

Chương 3: Chương này cung cấp thông tin quan trọng về các tùy chọn cấp nguồn. Hướng dẫn các tùy chọn quyền truy cập và sau đó áp dụng trình lập trình ST-Link V2 để thăm dò thiết bị.

Chương 4: Thực hiện tiện ích st-flash và lập trình thiết bị bằng chương trình liên kết nhỏ, một chương trình Flash khác với chương trình được cung cấp cùng với thiết bị. Thú vị hơn, API GPOP libopencm3 sẽ được thảo luận và chương trình liên kết nhỏ sẽ được kiểm tra chi tiết. Điều này giải thích cấu hình GPIO và hoạt động của nó.

Chương 5: Chương trình Flash sẽ chạy dưới FreeRTOS như một nhiệm vụ. Cách cấu hình tốc độ xung nhịp CPU sao cho không cần cấp một xung RC mặc định. Một chức năng móc tùy chọn để giải quyết sự kiện tràn ngăn xếp được minh họa. Cấu hình và quy ước của FreeRTOS đã được đề cập đến.

Chương 6: Chương này sẽ trình bày công thức chung cho việc cấu hình và kích hoạt USART ở chế độ không đồng bộ. Điều này cho phép Blue Pill gửi dữ liệu đến máy tính để bàn để gỡ lỗi hoặc bất kỳ báo cáo nào khác.

Đồng thời thể hiện các nhiệm vụ FreeRTOS và hàng đợi tin nhắn được cung cấp. Cách tiếp cận này chia các bên gửi và nhận của ứng dụng thành nhiệm vụ riêng của chúng.

Chương 7: Chương này hướng dẫn cách một giao diện USB được xây dựng giữa STM32 và máy tính xách tay / PC. Bản demo nhấn mạnh một số cơ sở FreeRTOS, như nhiệm vụ và hàng đợi tin nhắn. Có các nhiệm vụ thực thi riêng và truyền thông liên công việc an toàn giúp đơn giản hóa việc phát triển ứng dụng.

Chương 8: Giao thức SPI và cách áp dụng nó trên STM32 trong FreeRTOS bằng cách sử dụng libopencm3.

Chương 9: Chương này giới thiệu tính năng tải lên Intel Hex để code chương trình. 

Chương 10: Chương này khám phá cấu hình và sử dụng đồng hồ thời gian thực.

Cách thiết lập EXTI17 cho phép thiết lập thay đổi tín hiệu GPIO ngắt.

Chương 11: Chương này giúp chuẩn bị tốt cho làm việc I2C.

Chương 12: Trong chương này, SPI được áp dụng cho vấn đề thực tế của việc điều khiển một màn hình OLED. Khái niệm về AFIO cho gia đình STM32 cũng được áp dụng trong chương này chứng minh làm thế nào SPI1 có thể có chân I / O của nó chuyển đến chân khác nhau.

Chương 13: Chương này được xây dựng dựa trên phần mềm được phát triển trong Chương 12, thêm bộ điều khiển DMA để quản lý việc truyền dữ liệu đến thiết bị OLED.

Chương 14: Chương này cung cấp môi trường đơn giản để bắt đầu sử dụng ADC.

Chương 15: Trong chương này, tổng quan về hệ thống cây đồng hồ đã được trình bày, bắt đầu bằng nguồn đồng hồ chính: HSI và HSE cho đồng hồ hệ thống và HSE, LSE và LSI cho thời gian thực đồng hồ. Đồng hồ LSI cũng được sử dụng bởi bộ đếm thời gian watchdog.

Chương 16: Chương này áp dụng bộ đếm thời gian phần cứng cho nhiệm vụ tạo đầu ra tín hiệu PWM thích hợp cho việc điều khiển động cơ servo RC. Ưu điểm của việc sử dụng bộ đếm thời gian phần cứng là ít hoặc không hỗ trợ phần mềm khi nó được cấu hình để chạy, để thay đổi độ rộng xung hoặc chu kỳ của một bản cập nhật nhỏ cho bộ hẹn giờ. Đồng hồ phần cứng cũng cung cấp độ chính xác cao hơn vì chúng không bị chậm trễ phần mềm.

Chương 17: Chương này sẽ trình bày cách bộ đếm thời gian STM32 được sử dụng để đo độ rộng xung và khoảng thời gian của tín hiệu một cách dễ dàng.

Chương 18: Khi đèn tín hiệu nhấp nháy, mắt người nhìn thấy chúng gần như là liên tục chứ không phải là nhấp nhấy. Vậy chúng được được làm bằng cách nào? Và điều gì xảy ra nếu cần độ chính xác cao hơn cho ứng dụng điều khiển nhà máy? Chương này sẽ trình bày chi tiết hai câu hỏi trên.

Chương 19: Chương này sẽ trình bày một số cách viết code C đơn giản bằng cách đặt API ứng dụng CAN bus trong mô-đun canmsgs.c và canmsgs.h, nhiệm vụ viết ứng dụng trở nên dễ dàng hơn. Và một số ứng dụng của CAN BUS.

Chương 20: Chương này sẽ chuẩn bị để tạo các dự án STM32 tự thực hiện bằng cách sử dụng FreeRTOS.

Chương 21: Chương này trình bày các thiết bị thành viên khác có các thiết bị ngoại vi bổ sung trong gia đình STM32, như DAC (bộ chuyển đổi digitalto-analog), để đặt tên một thiết bị, một thiết bị trong gia đình STM32F407, Core407V, STM32F4.

MỤC LỤC ĐẠI CƯƠNG:

  • Chương 1: Giới thiệu
  • Chương 2: Cài đặt phần mềm
  • Chương 3: Power Up và Blink
  • Chương 4: GPIO
  • Chương 5: FreeRTOS
  • Chương 6: USART
  • Chương 7: USB nối tiếp
  • Chương 8: SPI Flash
  • Chương 9: Code Overlays
  • Chương 10: Đồng hồ thời gian thực (RTC)

 

NỘI DUNG XEM TRƯỚC:

 

Không có đánh giá cho sản phẩm này.

Viết đánh giá

Tên bạn:


Đánh giá của bạn:Lưu ý: không hỗ trợ HTML!

Bình chọn: Xấu           Tốt

Nhập mã kiểm tra vào ô bên dưới:



Internet of Things với ESP8266 -17%
Internet và mạng di động băng thông rộng ngày càng phổ biến, với chi ph&i..
180.000đ 150.000đ
Tiếp nối Tập 1, Cẩm nang STM32: Căn bản cần biết (tập 2) sẽ đi sâu vào c..
180.000đ
Giới thiệu:Raspberry Pi là chiếc máy tính kích thước nhỏ được t..
180.000đ
Với việc xuất hiện máy in3d giá rẻ thì nhu cầu tìm hiểu nghiêm t&u..
150.000đ
Internet of Things với ArduinoArduino, như chúng ta đang rất quen thuộc hiện nay, l&agrav..
160.000đ