STM8s Discovery Step:3 Led Blink
June 20, 2010 by 10Logic.com
Filed under Microcontroller, STM8s-Discovery
ผมพึ่งลองโปรเจ็คแรกกับ STM8s คือโปรเจ็คเล็กๆคือไฟกระพริบขั้นเทพ ก่อนการเขียนมาดูวงจรของ STM8s-Discovery กันก่อนจากวงจรจะมี LED: LD1 ซึ่งเป็น LED สีเขียวต่อกับ Port D0 ของ STM8S105C6T6 อยู่ด้วย
1.ให้เปิดโปรแกรม STVD ขึ้นมาแล้วทำการสร้าง New workspace ให้ทำการ add lib เข้ามาใช้งานคือ
- stm8s.h
- stm8s_conf.h
- stm8s_gpio.h
- stm8s_it.h
- stm8s_type.h
และไฟล์ .c ดังนี้
- stm8_interrupt_vector.c
- stm8s_gpio.c
- stm8s_it.c
โค้ดโปรแกรม
/* Includes ---------------------------------------*/
#include "stm8s.h"
/* Private defines --------------------------------*/
/* Private function prototypes --------------------*/
/* Private functions ------------------------------*/
void main(void){
// Delay for a short while.
u16 d;
// Reset ("de-initialise") GPIO port D.
GPIO_DeInit(GPIOD);
// Initialise pin 0 of port D.
GPIO_Init(GPIOD, GPIO_PIN_0, GPIO_MODE_OUT_PP_LOW_FAST);
// Infinite loop.
for(;;) {
for (d = 0; d < 20000; ++d) {
// Without a nop()
nop();
}
// Invert the LED pin's state to flash it.
GPIO_WriteReverse(GPIOD, GPIO_PIN_0);
}
}
ให้เลือก Compiler สำหรับการคอมไพล์โปรแกรมที่เมนู Project>Seting .. ที่ Rot path
ให้เลือกตำแหน่ง Path ที่ลงคอมไพล์เลอร์ไว้ตั้งแต่ขึ้นตอนการติดตั้งปกติจะอยู่ที่
C:\Program Files\COSMIC\CXSTM8_16K แต่สำหรับผมลงไว้ที่ Drive D:

หากต้องการให้ STVD สร้าง Hex File ให้กำหนดคน่าที่ Tab Post-Build กำหนดค่าดังนี้
chex -fi -o $(OutputPath)$(TargetSName).hex $(OutputPath)$(TargetSName).sm8
ทดลองคอมไพล์แล้วโปรแกรม การโปรแกรมจากที่ผมได้ทดลองทำคือ 1. ใช้วิธี Debug เลยเมื่อคลิก
Debug แล้วSTVD จะโปรแกรม .s19 ลง mcu ให้เราโดยอัตโนมัติ อีกวิธีก็ใช้การโปรแกรม Hex file
ด้วย ST Visual Programmer


เมื่อโปรแกรมเสร็จแล้วต้องเปิด ST Visual Programmer ก่อนนะครับโปรแกรมถึงจะทำงาน ขณะโปแกรม
LED สีแดงจะกระพริบแสดงสถานะการโปรแกรม hex file ว่าจะหากล้องมาถ่ายภาพไปให้ดูแต่ไม่มีกล้อง
จึงไม่มีภาพมาให้ดูนะครับ
- STM8S-Discovery Page
- ที่มา: http://benryves.com/journal/3567231
- STM8S standard firmware library
- STm8s LED Blink
by @10
Post Footer automatically generated by Add Post Footer Plugin for wordpress.

