8-bit Knowledge Base

      • C8051F96x Supply Connections without DCDC Converter

        Stephen | 04/106/2014 | 06:45 PM


        How should I connect the supply pins on the C8051F96x if I am not using the DCDC buck converter?


        • VBAT, VBATDC, and VDC should all connect to the same voltage supply. 
        • VIO and VIORF should connect to the IO supply voltage and must be <= VBAT.
        • IND should be floating since the DCDC converter is not used.
        • VLCD should be floating if the LCD segment driver is not used.
        • GNDDC should be connected to GND.
      • Simplicity Studio Fails to Build Assembly Code

        Stephen | 04/106/2014 | 06:44 PM


        Does Simplicity Studio support assembly? If so, why do my assembly (.ASM) files fail to build?


        Simplicity Studio supports assembly and builds assembly files with Keil's AX51 assembler. 


        Ensure your assembly files have the extension .asm in lowercase. Simplicity Studio will fail to build assembly files with the uppercase extension (.ASM).

      • C8051F850 BLDC Reference Design Project Differences

        Stephen | 04/91/2014 | 07:14 PM


        What are the differences between the two projects in the C8051F850 BLDC Reference Design kit: f85x_bldc and f85x_bldc_hall?


        The main project is called bldc, and its for BLDC motors without hall effects. This project should be used with the provided motor, which does not have hall effects. 

        The bldc_hall project is for a BLDC motor with hall effects. Silicon Labs does not provide a motor with hall effects in the kit.

      • Reducing C8051F850 BLDC Code Size

        Stephen | 04/91/2014 | 07:11 PM


        The C8051F850 BLDC source code is too large. How do I build this project to fit on the C8051F850?


        The C8051F850 BLDC project builds using the Keil small model with local variables in data space. 

        The F850 only has 8 kB of Flash and 256 bytes of xdata. This example barely fits with optimization level 11. 
        Program Size: data=181.0 xdata=147 code=7858 

        It is using 181 bytes of data space. There are 109 available bytes left in xdata. 

        2kB of flash space can be saved by commenting out the following line in the Build_Params.h file, but then the C8051F850 BLDC board will not work with the provided GUI. 
        #define BUILD_FOR_PROTOCOL 

        This project has only been built with Keil. Silicon Labs has not confirmed the code size is acceptable when building with IAR. We do not expect the code size will be acceptable if built with SDCC.

      • Using an External Supply Monitor

        Stephen | 04/91/2014 | 06:26 PM


        Should I use an external brownout detector / supply voltage monitor with my Silicon Labs MCU?


        All Silicon Labs MCUs have an internal brown out detector / supply voltage monitor. In most cases, the internal supply monitor is sufficient and an external supply monitor is not required.


        However, an external supply monitor is recommended for devices where the supply monitor's reset threshold is below the minimum required supply voltage.


        For example, the C8051F36x's supply voltage must be between 3.0 V and 3.6 V when SYSCLK > 50 MHz:



        And the supply monitor's reset threshold is 2.55V typical:



        For SYSCLK > 50 MHz and the typical case reset threshold, the MCU will be operating out of specification and unpredictably when the supply voltage is between 2.55 V and 3.0 V. Therefore, an external supply monitor should be used to reset the MCU when the supply voltage drops below 3.0 V. This guarantees that MCU operation is within specification and predictable at all times.