Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - TaoTao

Pages: 1 ... 3 4 [5] 6 7 ... 12
33
ไม่ได้จับ Controller นานเลย

เปิดคอมขึ้นมา ตระกูล STM32F1 ไม่มี
(ไฟล์ pic_01)

เลยลง Keil ใหม่ Load มาใหม่
ทีนี้ ไม่มี mcu ให้เลือก หายหมดเลย
(ไฟล์ pic_05)

ทำให้คอมไพล์ไม่ได้เลย  T_T!
(ไฟล์ pic_03)

แต่ดูใน Device database มันก็มีนะครับ
แต่ ไม่มีใน Option Project -> Device
(ไฟล์ pic_04)
@_@!

ไม่ได้เล่น นานเกิน ลืมหมด
มัน add mcu ยังไงอ่ะครับ

ขอบคุณล่วงหน้าครับ
 :-[

34
ARM Processors / STM32 กับการ Interrupt TMR/Counter
« on: February 13, 2017, 09:06:07 pm »
คือ ถ้า อยากให้มันวิ่งเข้า Interrupt
เมื่อ counter ครบ 1000, 2500, 5000, 9000
และ auto reload TMR เมื่อ counter ครบ 15000
และวนอยู่อย่างนี้
พอจะทำได้หรือเปล่าครับ

ตอนนี้ ที่โค้ดอยู่ คือมัน อินเตอร์รัพ เมื่อครบเวลา
แต่ก็ มันจะ auto reload ทันที โดยใช้ UIF

แต่อยากให้ มันเข้า อินเตอร์รัพ
เมื่อนับถึงเวลาตามที่เราเซ็ต
โดยไม่ต้อง รีโหลด ครับ

อ้อ จะเอามาใช้ กับ STM32 ครับ
ขอบคุณล่วงหน้าครับ
^__^!

35
STM8S :
คือ ที่  Header File  Preprocesser
ผมได้แบ่งไว้หลายเงื่อนไข
ตามวัตถุดิบ Hardware ที่ต่อร่วม

ทีนี้ หากอยากให้ เวลา Build เพื่อสร้าง *.s19
มันพอจะมีคำสั่ง ส่งออกชื่อไฟล์ ให้สอดคล้องกัน เพื่อไว้ Burn
ตามไปด้วยกันเลย ไหมครับ

ทุกวันนี้ ต้องคอยไปเปลี่ยนที่ Project setting T_T!
บางที ก็ ที่ Folder ที่มันสร้าง *.s19

Header ผม ประมาณนี้

Code: [Select]
#if defined SERIES_A
   #define  ...
   #define  ...
   #include ...

#elif defined SERIES_B
   #define  ...
   #define  ...
   #include ...

#elif defined SERIES_C
   #define  ...
   #define  ...
   #include ...

#else
   #define  ...
   #define  ...
   #include ...
#endif

36
MLCC = Multi Layer Ceramic Cap
งาน mcu หนีไม่พ้นแน่ๆ

นี่คือสาเหตุที่ทำให้ C Chip ที่วัดค่าได้ 4.7uF
แต่เมื่ออยู่ในวงจรเหลือค่าเพียงไม่ถึง 1 uF เท่านั้น  O_o!

จากผู้ผลิตรายหนึ่ง ผมว่า เนื้อหา ดี มั่กๆ
^__^!

ผมได้ใช้ MLCC หลายๆ จุดที่สำคัญ
เมื่อเอาสโคปจับ Ripple ต่ำมากกว่า C อื่น มากจริงๆ
แต่อาจต้องระวังตามที่ผู้ผลิตเค้าแนะนำนะครับ

https://product.tdk.com/info/en/products/capacitor/ceramic/mlcc/technote/solution/mlcc03/index.html

37
คือ กำลังหา วิธีนับ Machine Cycle น่ะครับ
เข้าดูใน Core Register มี PC Program Counter

เห็นว่า มัน เพิ่มขึ้น ๆ ๆ ๆ ๆ
มันเท่ากับ Machine Cycle ของ MCU เลย หรือเปล่าครับ ??

^__^!

38
ปัจจุบัน ผมหันมาใช้ STVD + COSMIC_C กับ STM8 ครับ
คือ อยากจะรู้ Machine Cycle ที่ใช้ในโค้ด แต่หาดูการนับ cycle ใน STVD ไม่เจอ

ลองเปิด TIM1 ดูบิต counter
แต่คิดว่า ไม่น่าใช่ เพราะคำสั่ง ง่ายๆ นับไป 20,000 -30,000 cycle
ซึ่งขัดแย้งกับ Refference Manual เค้า

เลยลองเปิด Dissasemble ปรากฎว่า  @_@!

คือ อยากเพียงทราบว่า มันใช้ไปกี่คล็อกของคำสั่งเรา น่ะครับ

มันใช้ดูได้ไหมครับ ต้องดูตรงไหนหว่า ใครอ่านออกบ้างน่ะครับ
มีไฟล์แนบน่ะครับ โค้ดผมเอง..

ขอบคุณล่วงหน้าครับ
^__^!




39
STVD(STM8S103) + Cosmic_C ครับ
คือ กำลังจะใช้ Prototype func ของเค้า
ซึ่งต้อง Execute from RAM

ทำตามทุกขั้นตอนแล้ว แต่ผม Build ไม่ผ่าน

มันขึ้น FLASH_CODE Size Overflow งง หนักมาก @_@!
น่าจะผิดพลาดที่ ขั้นตอน 3 เปล่าหว่า

ใครลองทำตาม แล้ว work บ้างครับ

นี่คือส่วนหนึ่ง ใน ไฟล์ stm8s_flash.c
Code: [Select]
Steps of the execution from RAM differs from one toolchain to another:
 - For Cosmic Compiler:
    1- Define a segment FLASH_CODE by the mean of " #pragma section (FLASH_CODE)".
    This segment is defined in the stm8s_flash.c file.
  2- Uncomment the "#define RAM_EXECUTION  (1)" line in the stm8s.h file,
    or define it in Cosmic compiler preprocessor to enable the FLASH_CODE segment
   definition.
  3- In STVD Select Project\Settings\Linker\Category "input" and in the RAM section
    add the FLASH_CODE segment with "-ic" options.
  4- In main.c file call the _fctcpy() function with first segment character as
    parameter "_fctcpy('F');" to load the declared moveable code segment
    (FLASH_CODE) in RAM before execution.
  5- By default the _fctcpy function is packaged in the Cosmic machine library,
    so the function prototype "int _fctcopy(char name);" must be added in main.c
    file.

ลูกศรชี้ คือ ที่ผมเพิ่มขึ้นมา
ไม่รู้ทำผิดหรือเปล่า จากคำแนะนำ ข้อ 3 ของข้างต้น


เมื่อ Build แล้ว เป็นแบบนี้

----------- Project stm8s103 - STM8 Cosmic - Configuration Debug -------------

Running Linker
clnk -l"C:\Program Files\COSMIC\FSE_Compilers\Lib"  -o Debug\stm8s103.sm8 -mDebug\stm8s103.map Debug\stm8s103.lkf
#error clnk Debug\stm8s103.lkf:1 segment .FLASH_CODE size overflow (1150)
 The command: "clnk -l"C:\Program Files\COSMIC\FSE_Compilers\Lib"  -o
Debug\stm8s103.sm8 -mDebug\stm8s103.map Debug\stm8s103.lkf " has failed, the returned value is: 1
exit code=1.

stm8s103.elf - 3 error(s), 0 warning(s)

มันเป็นเพราะ อะไร อ่ะครับ
ขอบคุณล่วงหน้าครับ
@_@!

40
STVD อยู่ๆ ก็ เข้าใช้ไม่ได้ครับ งง
มันขึ้น Popup แบบนี้

ต้องทำอย่างไรอ่ะครับ



Pages: 1 ... 3 4 [5] 6 7 ... 12