Hardware engineer, experience in board level development of analog/digital electronics, MCU programming in C/Assembler. Documenting in LaTeX.

This here: averageFloat = 100 - (sumM / 10 - 400) * 0.25641; //Calculation average moisture from array sum. Converting 0-1024 range to 0-100. Calibrate average...

Re: UART communication with ACK/NACK error handling

Reply posted 4 weeks ago (03/25/2021)
Ok, don't mind, meanwhile I saw your profile. Although most MCU will not be destroyed immediately by a short an outputs it is strongly deprecated to do this. Use...

Re: UART communication with ACK/NACK error handling

Reply posted 4 weeks ago (03/24/2021)
If the TX pin is configured as (totem-pole) output, as it should be, it is not a good idea to directly shorten that pin to GND or Vdd!You can however put a, say...

Re: UART communication with ACK/NACK error handling

Reply posted 4 weeks ago (03/24/2021)
If both MCU are hardwired you don't need pullups. After booting you must anyway clear all receiver buffers.Pullups should be used if the RX line can be left open.But,...

Re: UART communication with ACK/NACK error handling

Reply posted 4 weeks ago (03/24/2021)
Wondering about the pullup/pulldown-story, in the first post ... UART lines are active driven, i.e. totem-pole. Contrary to open-drain I2C.This on the TX MCU side:    TRISDbits.TRISD6...

Re: UART communication with ACK/NACK error handling

Reply posted 4 weeks ago (03/24/2021)
First, check the clocks! They don't need to be exactly the same, but as said not more than 5% different. For example, if the TX is to slow, the RX will sample a...

Re: UART communication with ACK/NACK error handling

Reply posted 4 weeks ago (03/24/2021)
Again, this does not work if the RX is dead, missing etc. In this case you must use a timeout or your system hangs forever.

Re: UART communication with ACK/NACK error handling

Reply posted 4 weeks ago (03/24/2021)
Ok, I missunderstood the function. But waiting forever on an answer is no good idea. If the link is broken this is a deadlock. You should work with timeouts.And,...

Re: UART communication with ACK/NACK error handling

Reply posted 4 weeks ago (03/23/2021)
I did not read all and everything ... 1) Declare all vars modified in ISR as volatile, so the compiler is forced to re-read them. Otherwhise re-reading may be omitted...
Afaik there are tools to do that. Or, are at least easy to write: removing all comments and whitespaces, rename all variables to cryptic random names, replace all...
Oh, thanks!But this is a simple bit-wise addition with a ripple-carry loop, nothing magic. Using digraphs and trigraphs, special variable names and removing all...
The "++++" is only in the string, this is symbolic for two increments ... it is not a valid C syntax.
Question 1: My suggestions (tested) #include <stdio.h>#include <stdint.h>void main(void){  uint8_t fred = 40;  uint8_t i, o;  printf("Fred: %u\n",...

Re: Anybody experienced in Advantech PCM 9373

Reply posted 9 months ago (08/01/2020)
1) As my mother tongue is German, I don't care about UK/US nomenclature ... ;)2) The color/colour of the pushbutton is of no importance. Maybe because the reset...

Re: Anybody experienced in Advantech PCM 9373

Reply posted 9 months ago (08/01/2020)
Don't rely to much on "replace the complete unit", chinese documentation often has to be interpreted.I suppose you already have reset the BIOS config? S2 seems to...

Re: Anybody experienced in Advantech PCM 9373

Reply posted 9 months ago (08/01/2020)
Hi,while not having experience with this specific board ... 15 pin is the normal pin-out of VGA, so, did you connect a VGA monitor to the DE15 connector? You should...

Re: Interface to program STM8 ?

Reply posted 10 months ago (06/16/2020)
Nope, SDCC (Version > 3.4; actual 4.0.2) supports STM8.stm8flash burns them, using the cheap ST-Link V2.Links:SDCC: http://sdcc.sourceforge.net/stm8flash: https://github.com/vdudouyt/stm8flashCode...

Use this form to contact tcfkat

Before you can contact a member of the *Related Sites:

  • You must be logged in (register here)
  • You must confirm you email address