Hi,
I mean where do I find the specific comandos for setting up the uC. Thing like timer , interupts on coperator edge detections. Do I use the same aus discribed in the data sheet or do they vary a bit.
The manufacturer data sheets are the best source. They explain in detail how to setup interrupts, timers, comparator, edge detections,...
As @spth mentioned before, there are several examples here:
https://github.com/free-pdk/sdcc-pdk-code-examplesAlso the easypdkprog repository contains a simple "hello world" example (compiled for PMS150C / PFS154 / PFS173 and as source code):
https://github.com/free-pdk/easy-pdk-programmer-software/tree/master/ExamplesAnd the question for the programming of the PMS150C is more if I can generate the file for flashing or not?
You can use SDCC and it will produce the complete (hex) file for flashing. (see above)
I think I read somewhere in this post, that by now only the PFS154 and PFS174 are supported in the SDCC...
This is wrong. Right now SDCC can be used to generate code for all 13, 14 and 15 bit PADAUK ICs which includes apx. 95% of all PADAUK ICs available.
It does not matter if they are OTP or flashed based.
PMS150 is 13 bit OTP
PMS154 is 14 bit OTP
PFS154 is 14 bit FLASH
PFS173 is 15 bit FLASH
...
So SDCC supports *all* ICs, easypdkprog needs to be extended for every specific IC. Right now the following IC types are supported:
./easypdkprog list
Supported ICs:
PMC251 (0x058): OTP : 1024 (16 bit), RAM: 96 bytes
PMS132 (0x109): OTP : 2048 (14 bit), RAM: 128 bytes
PMS132B (0x109): OTP : 2048 (14 bit), RAM: 128 bytes
PMS150C (0xA16): OTP : 1024 (13 bit), RAM: 64 bytes
PMS15A (0xA16): OTP : 1024 (13 bit), RAM: 64 bytes
PMS152 (0xA27): OTP : 1280 (14 bit), RAM: 80 bytes
PMS271 (0xA58): OTP : 1024 (16 bit), RAM: 64 bytes
PFS154 (0xAA1): FLASH: 2048 (14 bit), RAM: 128 bytes
PMS133 (0xC19): OTP : 4096 (15 bit), RAM: 256 bytes
PMS134 (0xC19): OTP : 4096 (15 bit), RAM: 256 bytes
MCU390 (0xC31): OTP : 2048 (14 bit), RAM: 128 bytes
PMS131 (0xC83): OTP : 1536 (14 bit), RAM: 88 bytes
PMS171B (0xD36): OTP : 1536 (14 bit), RAM: 96 bytes
PMS154B (0xE06): OTP : 2048 (14 bit), RAM: 128 bytes
PMS154C (0xE06): OTP : 2048 (14 bit), RAM: 128 bytes
PFS173 (0xEA2): FLASH: 3072 (15 bit), RAM: 256 bytes
In case you need support for a specific IC not in the list just give a note.
Therefor I want to know if I an use the .pdk Files from the padauk IDE. I think I read ... that ... I can only flash .hex files because the .pdk contain futher informations than only the code (something like calibration of the clock).
This is correct. PDK files can NOT be flashed to the IC directly. The original IDE inserts a lot of stub code which the WRITER (flasher) needs to know about and manipulate the contents flashed to the IC.
For example The IDE inserts a a calibration loop in every PDK file which will prevent your program from starting unless you do a specific calibration and write some values to some special locations.
Since we focus on creating a free and open source tool chain here not much effort is going into adding support for the legacy closed and undocumented PDK file solution.
Have fun,
JS