Thông báo

Collapse
No announcement yet.

Cùng nhau trao đổi về STM8

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • #16
    hi all,

    mình cũng đang vọc chú này STM8S003F3,nạp bằng STLink qua USB của hãng ST,mình đang gặp 1 vấn đề rắc rối mong all chỉ giáo giúp,
    chả là mình có cái code dùng IO đơn giản thôi nhưng điều khiển các port,pin khác thì ok,nhưng cũng code đó mà đổi lại port B,Pin 4 hoặc Pin 5 thì lại không được,mình đã thử với các pin khác như pin0..3 rồi pin6,7 vẫn ok.
    mình thấy chân này có thêm chức năng khác là I2C,nhưng các chân khác ở các port khác vẫn có nhiều chức năng khác đó thôi,mà vẫn chạy ngon lành,
    ??????
    ai đã làm rồi giải đáp dùm mình với,hxhx mình cũng mới vọc con này nên còn mù mờ lắm.

    thanks all
    các vấn đề về sdcard, usb, tcp/ip, upgrate firmware,...
    trên các dòng chip: stm32, lpc of nxp
    please cell phone: 01649895559

    Comment


    • #17
      bác nào biết ở hà nôi chỗ bán con STM8 chỉ mình với. cũng đang định mua về dùng thử nhưng không thấy chỗ nào bán. cảm ơn nhiều.
      Never forget who you are!

      Comment


      • #18
        Nguyên văn bởi nguyenvanvui Xem bài viết
        hi all,

        mình cũng đang vọc chú này STM8S003F3,nạp bằng STLink qua USB của hãng ST,mình đang gặp 1 vấn đề rắc rối mong all chỉ giáo giúp,
        chả là mình có cái code dùng IO đơn giản thôi nhưng điều khiển các port,pin khác thì ok,nhưng cũng code đó mà đổi lại port B,Pin 4 hoặc Pin 5 thì lại không được,mình đã thử với các pin khác như pin0..3 rồi pin6,7 vẫn ok.
        mình thấy chân này có thêm chức năng khác là I2C,nhưng các chân khác ở các port khác vẫn có nhiều chức năng khác đó thôi,mà vẫn chạy ngon lành,
        ??????
        ai đã làm rồi giải đáp dùm mình với,hxhx mình cũng mới vọc con này nên còn mù mờ lắm.

        thanks all
        mình đã có đáp án cho vấn đề này rồi,
        tại vì 2 chân Pin4 và Pin5 của port B của các chip này có chế độ true open drain tức là 2 chân này sẽ không dùng điện trở nội pull-up bên trong vì thế mức áp ra cho chân này khi high chỉ là ~2.0V dòng max = 20mA, do đó để sử dụng được các chân này như IO thì cần phải dùng điện trở pull-up ngoại,tức là kéo điện trở lên VCC.

        các bạn xem thêm:
        Open Drain Ports
        hoặc:
        https://my.st.com/public/STe2ecommun...urrentviews=12

        hoặc
        http://www.st.com/internet/com/TECHN...CD00200092.pdf

        chúc may mắn
        các vấn đề về sdcard, usb, tcp/ip, upgrate firmware,...
        trên các dòng chip: stm32, lpc of nxp
        please cell phone: 01649895559

        Comment


        • #19
          chú stm8 này có nhiều điểm đặc biệt thật,vọc 1 thời gian sau mới hiểu hết được ý đồ của nhà sản xuất,chúc mọi người vọc chú này thành công
          các vấn đề về sdcard, usb, tcp/ip, upgrate firmware,...
          trên các dòng chip: stm32, lpc of nxp
          please cell phone: 01649895559

          Comment


          • #20
            Nguyên văn bởi nguyenvanvui Xem bài viết
            chú stm8 này có nhiều điểm đặc biệt thật,vọc 1 thời gian sau mới hiểu hết được ý đồ của nhà sản xuất,chúc mọi người vọc chú này thành công
            thấy dòng hay quá.bác tìm hiểu rùi,viết vài bài giới thiệu về nó đi,cho a e tìm hiểu với
            email:trangonthuocthom@gmail.com

            Comment


            • #21
              Thích tìm hiểu STM hình như đang có sample free chip ST8 đó, bên armvn
              Web:
              ->Nhận thiết kế, hoàn thiện dự án, sản phẩm điện tử<-
              -->Giải pháp GSM/GPRS/GPS - Công nghệ RFID<--

              Comment


              • #22
                Nguyên văn bởi trathuoc Xem bài viết
                thấy dòng hay quá.bác tìm hiểu rùi,viết vài bài giới thiệu về nó đi,cho a e tìm hiểu với
                Nguyên văn bởi trathuoc Xem bài viết
                thấy dòng hay quá.bác tìm hiểu rùi,viết vài bài giới thiệu về nó đi,cho a e tìm hiểu với
                + Xuất sứ: STM8S là dòng chíp của hãng ST sử dụng lõi STM8 lên đến 20MIPS tốc độ 40MHz,tham khảo thêm:
                STM8S 8-bit MCUs - STMicroelectronics

                + kiến trúc: STM8S có kiến trúc 8 bit,Harvard 3 pipeline,
                Device performance and robustness are ensured by advanced core and peripherals made in a state-of-the art technology, a 16 MHz clock frequency, robust I/Os, independent watchdogs with separate clock source, and a clock security system.
                + flash chương trình: điểm đáng chú ý của chú này là nạp chương trình dùng giao diện swim(single wire interface module)

                ưu điểm của giao diện này cho ta tiết kiệm diện tích cho PCB thay vì SPI như AVR hay UART hay JTAG như chip ARM,với SWIM chỉ cần thêm chân RST cùng với chân SWIM là ok,
                về tốc độ flash qua mode swim: có 2 chế độ,thấp: 30->200KHz,cao: 10->25MHz,
                xem chi tiết: http://www.st.com/internet/com/TECHN...CD00173911.pdf
                về chức năng: 2 mode: flash chương trình và debug
                +mạch nạp: các bạn có thể dùng ST-Link có trong board stm8-discovery của nhà sx,có thể dùng nạp qua usb nên hợp với lap,giá hình như cũng khá mềm,
                STM8S-DISCOVERY - STMicroelectronics
                ST-LINK - STMicroelectronics
                + IDE: dùng ST visual Develop build thành file .s19 định dạng của nó và nạp qua ST Visual Programmer
                + source mẫu: ST Microelectronics | Resource Selector
                + share kinh nghiệm thêm:
                GPIO: với chú stm8s thì tất cả các chân đều là ngắt ngoài EXTINT

                đặc tính IO:
                + standard port:
                + true open drain (T):
                + high sink port(HS):
                các chân thuộc đặc tính khác sử dụng bình thường,riêng với chân (T) thường cấu hình cho I2C với chân này như mình nói ở trên không có điện trở pull-up nội, do đó designer fai tự thiết kế để dùng normal.
                đọc thêm: http://www.st.com/internet/com/TECHN...CD00200092.pdf
                + 1 ví dụ: điều khiển led 7 đoạn qua spi: led7doan.rar
                + thêm: khi nào rảnh port tiếp
                các vấn đề về sdcard, usb, tcp/ip, upgrate firmware,...
                trên các dòng chip: stm32, lpc of nxp
                please cell phone: 01649895559

                Comment


                • #23
                  các ứng dụng về timer các bạn xem tại đây:
                  TIM1andTIM4
                  các vấn đề về sdcard, usb, tcp/ip, upgrate firmware,...
                  trên các dòng chip: stm32, lpc of nxp
                  please cell phone: 01649895559

                  Comment


                  • #24
                    các ứng dụng về touch key các bạn tham khảo ở đây:
                    http://www.st.com/stonline/stappl/st...CD00223061.pdf

                    vì các ứng dụng này mình chưa có dịp test vì ko có board nên ko viết được.
                    các vấn đề về sdcard, usb, tcp/ip, upgrate firmware,...
                    trên các dòng chip: stm32, lpc of nxp
                    please cell phone: 01649895559

                    Comment


                    • #25
                      STM8 có cái mình cần: Unique ID. Cái mà mình đang đề nghị Microchip thêm vào PIC nhưng chưa biết Microchip định thế nào.

                      STM8 mua ở đâu? Có nhà cung cấp ở VN không?

                      Comment


                      • #26
                        hi all,

                        mình cũng đang vọc chú này STM8S003F3,nạp bằng STLink qua USB của hãng ST,mình đang gặp 1 vấn đề rắc rối mong all chỉ giáo giúp,
                        chả là mình có cái code dùng IO đơn giản thôi nhưng điều khiển các port,pin khác thì ok,nhưng cũng code đó mà đổi lại port B,Pin 4 hoặc Pin 5 thì lại không được,mình đã thử với các pin khác như pin0..3 rồi pin6,7 vẫn ok.
                        mình thấy chân này có thêm chức năng khác là I2C,nhưng các chân khác ở các port khác vẫn có nhiều chức năng khác đó thôi,mà vẫn chạy ngon lành,
                        ??????
                        ai đã làm rồi giải đáp dùm mình với,hxhx mình cũng mới vọc con này nên còn mù mờ lắm.

                        thanks all


                        Ktra cấu hình chân. Do bạn không nói rõ điều khiển đơn giản là điều khiển gì. Phần lớn các chân của PIC, AVR bạn chỉ cấu hình Input hoặc Ouput. Còn STM8 phải ktra kỹ tính năng từng chân mà cấu hình cho đúng.
                        |

                        Comment


                        • #27
                          Nguyên văn bởi hoen Xem bài viết
                          hi all,

                          mình cũng đang vọc chú này STM8S003F3,nạp bằng STLink qua USB của hãng ST,mình đang gặp 1 vấn đề rắc rối mong all chỉ giáo giúp,
                          chả là mình có cái code dùng IO đơn giản thôi nhưng điều khiển các port,pin khác thì ok,nhưng cũng code đó mà đổi lại port B,Pin 4 hoặc Pin 5 thì lại không được,mình đã thử với các pin khác như pin0..3 rồi pin6,7 vẫn ok.
                          mình thấy chân này có thêm chức năng khác là I2C,nhưng các chân khác ở các port khác vẫn có nhiều chức năng khác đó thôi,mà vẫn chạy ngon lành,
                          ??????
                          ai đã làm rồi giải đáp dùm mình với,hxhx mình cũng mới vọc con này nên còn mù mờ lắm.

                          thanks all


                          Ktra cấu hình chân. Do bạn không nói rõ điều khiển đơn giản là điều khiển gì. Phần lớn các chân của PIC, AVR bạn chỉ cấu hình Input hoặc Ouput. Còn STM8 phải ktra kỹ tính năng từng chân mà cấu hình cho đúng.
                          Anh chàng này đã bỏ qua user manual .
                          Mấy cái PB.4 và PB.5 nó là dạng cực C hở, muốn sài thì phải treo trở lên Vcc cho nó.


                          Add: 97 Quán Nam - Lê Chân - Hải Phòng.
                          Tel: 031 518648 Phone: 0904 283 505

                          Comment


                          • #28
                            #include "stm8s_conf.h"

                            unsigned int delay;
                            int main(void)
                            {
                            GPIO_DeInit(GPIOD);
                            GPIO_Init(GPIOD, GPIO_PIN_0, GPIO_MODE_OUT_PP_LOW_FAST);

                            while(1)

                            {
                            GPIO_WriteReverse(GPIOD, GPIO_PIN_0);
                            for(delay=0; delay<64000; delay++){;}
                            }
                            // return 0; //remove Warning[Pe111]
                            }
                            Em thấy chủ đề đã lâu, nay em mới tìm hiểu về STM8. ở trên là code mẫu chớp tắt led. Em có thắc mắc như sau:
                            GPIO_Init(GPIOD, GPIO_PIN_0, GPIO_MODE_OUT_PP_LOW_FAST); minh cấu hình chế độ tạo xung 10MHz rồi, tại sao còn đảo trạng thái PIND.0 GPIO_WriteReverse(GPIOD, GPIO_PIN_0).
                            τ╩╦╚╔├─┬┘█┌╓├Khó quá thì bỏφ║║╩╔╦─Üúk

                            Comment


                            • #29
                              Nguyên văn bởi telecodex Xem bài viết
                              Em thấy chủ đề đã lâu, nay em mới tìm hiểu về STM8. ở trên là code mẫu chớp tắt led. Em có thắc mắc như sau:
                              GPIO_Init(GPIOD, GPIO_PIN_0, GPIO_MODE_OUT_PP_LOW_FAST); minh cấu hình chế độ tạo xung 10MHz rồi, tại sao còn đảo trạng thái PIND.0 GPIO_WriteReverse(GPIOD, GPIO_PIN_0).
                              10Mhz chắc chỉ là xung clock làm việc cho cpu
                              còn muốn blink led thì tất nhiên phải đảo trạng thái rồi.

                              chứ led mà nháy 10Mhz thì làm sao bạn thấy được

                              Comment


                              • #30
                                các pro ơi.các anh xem giúp em doan code led 7 doan này với.em mới chuyển từ pic sang stm8s nên em k biết biên dich của nó như thế nào và chương trình em viết nó có tương thích với dòng vdk này không.khi em lạp chương trình vào thì toàn bộ led đều sáng hết theo kiểu 0xff.các anh giúp em với em đang cần gấp ạ
                                #include "stm8s.h"
                                #include "stm8s_gpio.h"
                                #define PORTD (GPIOD)
                                unsigned char ma[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x9 0};
                                void Delay(uint16_t nCount)
                                {
                                /* Decrement nCount value */
                                while (nCount != 0)
                                {
                                nCount--;
                                }
                                }
                                void chuyen(unsigned char x,unsigned char y,unsigned char z,unsigned char k,unsigned char m,unsigned char n)
                                {
                                int i,temp1;
                                for(i=0;i<8;i++){temp1=n;temp1=temp1&0x80;if(temp1 ==0x80) GPIO_WriteHigh(GPIOD, GPIO_PIN_0);
                                else GPIO_WriteLow(GPIOD, GPIO_PIN_0);n*=2;GPIO_WriteLow(GPIOD, GPIO_PIN_2);GPIO_WriteHigh(GPIOD, GPIO_PIN_2);}
                                for(i=0;i<8;i++){temp1=m;temp1=temp1&0x80;if(temp1 ==0x80) GPIO_WriteHigh(GPIOD, GPIO_PIN_0);
                                else GPIO_WriteLow(GPIOD, GPIO_PIN_0);m*=2;GPIO_WriteLow(GPIOD, GPIO_PIN_2);GPIO_WriteHigh(GPIOD, GPIO_PIN_2);}
                                for(i=0;i<8;i++){temp1=k;temp1=temp1&0x80;if(temp1 ==0x80) GPIO_WriteHigh(GPIOD, GPIO_PIN_0);
                                else GPIO_WriteLow(GPIOD, GPIO_PIN_0);k*=2;GPIO_WriteLow(GPIOD, GPIO_PIN_2);GPIO_WriteHigh(GPIOD, GPIO_PIN_2);}
                                for(i=0;i<8;i++){temp1=z;temp1=temp1&0x80;if(temp1 ==0x80) GPIO_WriteHigh(GPIOD, GPIO_PIN_0);
                                else GPIO_WriteLow(GPIOD, GPIO_PIN_0);z*=2;GPIO_WriteLow(GPIOD, GPIO_PIN_2);GPIO_WriteHigh(GPIOD, GPIO_PIN_2);}
                                for(i=0;i<8;i++){temp1=y;temp1=temp1&0x80;if(temp1 ==0x80) GPIO_WriteHigh(GPIOD, GPIO_PIN_0);
                                else GPIO_WriteLow(GPIOD, GPIO_PIN_0);y*=2;GPIO_WriteLow(GPIOD, GPIO_PIN_2);GPIO_WriteHigh(GPIOD, GPIO_PIN_2);}
                                for(i=0;i<8;i++){temp1=x;temp1=temp1&0x80;if(temp1 ==0x80) GPIO_WriteHigh(GPIOD, GPIO_PIN_0);
                                else GPIO_WriteLow(GPIOD, GPIO_PIN_0);x*=2;GPIO_WriteLow(GPIOD, GPIO_PIN_2);GPIO_WriteHigh(GPIOD, GPIO_PIN_2);}
                                GPIO_WriteLow(GPIOD, GPIO_PIN_1);
                                GPIO_WriteHigh(GPIOD, GPIO_PIN_1);
                                }
                                void main()
                                {
                                GPIO_Init(PORTD,(GPIO_Pin_TypeDef)GPIO_PIN_0|GPIO_ PIN_1|GPIO_PIN_2, GPIO_MODE_OUT_PP_LOW_FAST);
                                while(1)
                                {
                                chuyen(ma[0],ma[0],ma[0],ma[0],ma[0],ma[5]);
                                }
                                }

                                Comment

                                Về tác giả

                                Collapse

                                sugus Tìm hiểu thêm về sugus

                                Bài viết mới nhất

                                Collapse

                                Đang tải...
                                X