Legacy microcontrollers Forum Discussions
Now, the customer thinks his project will conform to MISRA-C.
But, PDL have many errors to conform.(rule 2.2, 19.10, 16.3, and others)
Also, bt.c have a comment, "Workaround for MISRA-C 2004 rule 12.7".
PDL will seems to conform to MISRA-C.
The customer is confused.
Please tell how does PDL 2.0.2 conform to MISRA-C.
ex. -PDL doesn't conform to MISRA-C.
-PDL conform to MISRA-C expect rule 2.2.
today the first Release Candidate (RC1) for SDCC 3.8.0 has been created.
As always it has been put online in our SourceForge File section.
If you have the time, please verify it and report back with the positive
or negative results.
In previous release 3.7.0, no binaries were released. 3.8.0 has binaries
gain, though the list of binary platforms changed. For 3.8.0, binaries
are released for GNU/Linux on amd64, Windows on amd64, macOS on amd64,
Windows on x86.
However: Unlike previous binary releases, the windwos installer have not
been checked by the Release Manager (my only machine with a Windows
installed needs a new poer supply, which hasn't arrived yet).
There have been various of improvements, both features and bug fixes
since SDCC 3.7.0. The full ChangeLog is at
The following is a list of particularly noticeable new features.
* Additional general utility function: bsearch()
* Support for rematerialization in the stm8 backend reduces register pressure and stack usage
* Merged upstream GNU binutils 2.30
* All Python code is now fully compatible with both Python 2.7 and Python 3.6, so Python 3 can be used instead of Python 2.
* Regression testing for diagnostics.
* Improved handling of local bool variables in the mcs51 backend substantially reduces code size.
* Large memory model for stm8 for 24-bit codespace allows using more than 32KB of Flash for code.
* New optimizations for calls to some standard library function (printf(), puts(), strcpy()).
* The type of true and false from stdbool.h change from int to bool.
* New C2X mode (--std-c2x, --std-sdcc2x, #pragma std_c2x) adds support for one-argument static_assert variant.
* Intermingling of declarations and statements (ISO C99).
* Support headers for AX8052 devices.
* Adopted GCC 8.2 regression tests (execute part of the GCC C torture tests).
Philipp Klaus Krause
SDCC 3.8.0 Release Manager
P.S.: Apart from the improvements in standard compliance, and the better handling of local bool, there is no "big" new feature relevant to mcs51 / xc800 programming. But there some smaller improvements in code generation and many bugfixes. Show Less
I'm using the Cypress Kit 037 to control a BLDC motor, and now I want to use an encoder to obtain the angle instead of using the observer.
I saw that the FM4-U120-9B560 has a code example of what I want to do (FOC with encoder), so I downloaded the AN, User Guide and software available here.
But the User Guide states in page 11 the files available in the s04_app folder. They can be seen too in page 23, Figure 6-10. These files are not present in the folder I got. Even when using the IAR Embedded Workbench IDE, all I can see is this:
I'm interested in the code that obtains the angle from the encoder. Where can I find it?
I work for a company which produces its own universal in-system programmers.
I have already written a small software in order to program both TCFLASH and WORK FLASH for traveo s6j3200 devices, now I have to had to this software the ability to program an hyperflash memory connected to the hyperbus (ch #2 in this case). In order to do so I am merging part of your example project referred to the hyperflash programming but I am facing some issues. When I am configuring the ports as signals for the hyperbus, I get a device reset when writing to the PPC_PCFGR register related to any of the ports.
I am initializing an stc_port_pin_config_t object and passing it to the Port_SetPinConfig function as in your example. Then I get the error when PORT_WPREG_PPC(punPcfgrn[u32PcfgrnIndex], unPortSetting); is called. If i remove the register assignment inside this macro, I don't get any error.
Is there some initialization to be done in order to prevent errors when writing those registers?
Writing to GPIO registers doesn't give me an error.
An update to my situation:
I saw that gcc was not compacting the structure for the PPC register, so I got 0x800 as offset for PPC_KEYCDR register. I fixed this issue by putting the directive __attribute__((aligned(1),packed)) for the involved structs and unions. However, this haven't solved my issue.
Even if I write this code instead of using the defined macro, I get an error:
*(uint32_t*)0xB4740400 = 0x10000014;
*(uint32_t*)0xB4740400 = 0x50000014;
*(uint32_t*)0xB4740400 = 0x90000014;
*(uint32_t*)0xB4740400 = 0xD0000014;
*(uint16_t*)0xB4740014 = unPortSetting.u16Register;
This should set the port number 10. I checked the sizes of the assignments in the macro and they seem fine, also the addresses seem fine.
Any hint?Show Less
I'm trying to program an MBR3102 using a Miniprog3 with EZ-Click. When I select the target device, the Miniprog3 is found, but my device is not. My connections are verified, with the exception of XRES, which does not exist on the MBR3102. Anyone have similar issues?Show Less
what is the difference between A and B of device MB96F346RSBPMC-GSE2?
We need this for our customer because he has to decide which Rev. can use in the production.
1. Not able to flash into TC277TF board using UAD pro 2 debugger
PFA of the failure report
What is the issue?
2.Can i get the bootmode header for flashing into the Tricore Tc277Tf controller Show Less
I have to work with the S6J3360 Traveo microcontroller.
My work is to develop a Bootloader.
So my question is if a Flash library exist for this µC?
The idea is to save lot of time and also avoid useless development time.