Document

BÀI 01 : HƯỚNG DẪN TẠO PROJECT TRONG STM8S VỚI STVD


  1. PHẦN MỀM CẦN THIẾT
    • Các bạn đã cài phần mềm CXSTM8_idea_sim_evalsttoolset_pack39 trên máy tính.
    • Tải thư viện chuẩn của ST : en.stsw-stm8069.
    • Các bước cài đặt phần mềm khá đơn giản, các bạn chỉ cần mở file cài và để chọn mặc định, Next…
    • Link tải mình đã để ở dưới.

  2. CÁC BƯỚC CÀI ĐẶT
    1. Tạo thư mục riêng chứa 2 thư mục con, ở đây là GPIO và 2 thư mục con(tên tùy ý) là lib(chứa các file thư viện chuẩn) và project(chứa các file sử dụng để viết code).
    2. Copy thư 2 thư mục incsrc trong en.stsw-stm8069\STM8S_StdPeriph_Lib\Libraries vào thư mục lib đã tạo ở phần 1; các file main.c, stm8s_conf, stm8s_it.c, stm8s_it.h trong thư mục en.stsw-stm8069\STM8S_StdPeriph_Lib\Project\STM8S_StdPeriph_Template và file stm8_interrupt_vector trong thư mục en.stsw-stm8069\STM8S_StdPeriph_Lib\Project\STM8S_StdPeriph_Template\STVD\Cosmic vào thư mục proiect đã tạo ở phần 1
    3. Mở ST Visual Develop bắt đầu tạo project mới
      1. File -> new workspace -> create workspace and project -> double click vào create workspace…
      2. Điền tên workspace(tùy ý) ở đây mình chọn là GPIO và địa chỉ lưu project là thư mục con GPIO/project mà mình đã tạo ở bước 1. -> OK -> OK
      3. Điền tên project(tùy ý) ở đây mình chọn luôn là GPIO. Toolchain chọn là STM8 Comic, Toolchain root sẽ tự động được chọn(Nếu bạn nào chưa cài CXSTM8_idea_sim_eval ở mục I thì nó sẽ không xuất hiện) -> click OK.
      4. Chọn MCU mà mình sử dụng, ở đây mình sử dụng chip STM8S003F3P6 thì mình sẽ chọn STM8S003F3P ->bấm Seclect(lưu ý nhớ bấm nút này trước khi OK) -> click OK. Nếu là chip STM8S003K3 thì chọn STM8S003K3.
      5. Chương trình sẽ tự động sinh ra 2 file main.cstm8_interrupt_vector -> bạn xóa 2 file đó đi bằng cách chuột phải -> delete(hoặc bấm phím delete sau khi chọn). Và chuyển mode debug sang release.
      6. Ở thư mục Source files các bạn tạo 2 thư mục mới(chuột phải-> new folder) là user(chứa các file cần thiết ) và lib(chứa các file thư viện). Add( chuột phải -> add file to folder) các file đã copy ở phần II.2 như trong hình. Trong thư mục lib. 2 file stm8s_gpio.c và stm8s_clk.c là bắt buộc còn các file khác như uart, exti thì tùy từng mục đích mà thêm vào sau.
    4. Vào Project -> setting để thiết lập các thông số cho project vừa tạo ra.
      1. Thẻ general check mục project specific toolset path.
      2. Thẻ C compiler -> tab Category chọn preprocessor ở mục additional include directories dẫn tới 2 đường link chứa thư viện là GPIO\lib\inc và GPIO\project.
      3. Thẻ C compiler -> tab Category chọn preprocessor ở mục processor definitions điền tên MCU mà mình lập trình ở đây là STM8S003 -> OK.
    5. Build project và bảng thông báo lỗi xuất hiện 0 lỗi là ok(mình khoanh ở 2 chỗ trong hình)
    6. Chúc các bạn thành công.

  3. NẠP FILE MỚI TẠO TỪ CHƯƠNG TRÌNH MỚI TẠO CHO MẠCH NẠP
    1. Ở đây mình sử dụng ST link V2(mạch nạp này rẻ nhất) để nạp cho chip STM8S. Kiểm tra các thông số sau:
      • Kiểm tra đã cấp nguồn cho board mạch chưa.
      • Kết nối chân SWIM của STlink V2 với chân PD1/SWIM. Nếu bạn đã sử dụng chân này với chức năng GPIO hoặc nạp mà vẫn báo lỗi thì cần kết nối thêm chân Reset của STlink V2 với chân Reset của MCU.
      • Đã cài đặt driver cho mạch nạp Stlink-V2- để xem đã nhận mạch nạp chưa các bạn vào computer management để xem.
    2. Mở ST Visual Programmer để load file và nạp cho chip.
      • Vào tab Configuration để cấu hình chip nạp và mạch nạp.
      • Ở đây mình chọn là ST link, Swim, STM8S003F3P. Nếu là chip STM8S003K3 thì chọn STM8S003K3 -> nhấn OK.
      • Vào Open để mở file, trỏ đến file mà chương trình ST Visual Develop đã tạo ra file(GPIO\project\Release) và nhấn nút nạp(program current tab) đối với các chương trình không sử dụng chức năng remap. Các bạn chú ý những chỗ mà mình đã khoanh. Chương trình nạp thành công sẽ xuất hiện dòng Program memory successtully verified.
      • Rút chân Reset ra. Mạch đã hoàn toàn chạy. Chúc các bạn thành công.
      • Link tải STVD,STVP,datasheet, driver stlink V2 Link tải ví dụ mẫu mình đã tạo Link youtube mình đã làm