Wykres commitów

286 Commity (46cd7ec7c796ff45929fc80495e374bce13da4be)

Autor SHA1 Wiadomość Data
Howard Su 8e89496101 Build LUT by fixed point math
Step 1 to remove float from the code. LUT table can be perfect build by
fixed point math.

lut[i] = (float)i / ((float)255 / ((float)pwm_max - (float)pwm_min)) +
pwm_min;
can be converted to:
lut[i] = (float)i * ((float)pwm_max - (float)pwm_min) / (float)255 +
pwm_min;
can be futher convert to:
lut[i] = i * (pwm_max - pwm_min) / 255 + pwm_min;

The second convertion is validated by a small test code. The first
convertion has slight difference on lut[255] of some combinition of
pwm_max and pwm_min, which I believe second fomula is more accurate.
2020-10-09 15:55:44 +08:00
Howard Su 02f2b0c07f Limit pwm value into a reasonable range 2020-10-09 15:35:09 +08:00
guido 0b4c3f5cf6 Merge experimental branch. 2020-10-09 00:20:02 +02:00
threeme3 d057622b55
Merge pull request #24 from howard0su/experimental
Mark ssb and dsp cap const when non-QCX
2020-10-09 00:08:15 +02:00
threeme3 d664a3de78
Merge pull request #25 from howard0su/clean_signed
Use unsigned int when possible
2020-10-09 00:06:18 +02:00
guido 004a511f35 Minor changes. 2020-10-08 23:07:09 +02:00
Howard Su 96a72cd362 Two more cases 2020-10-09 01:14:46 +08:00
Howard Su ea65328f7b Use unsigned int when possible
This reduce the code size significant by two factors:
1. unsigned version can produce less code
2. paramAction can reduce the different versions of templated code

Before;
Sketch uses 27804 bytes (86%) of program storage space. Maximum is 32256 bytes.
Global variables use 1291 bytes (63%) of dynamic memory, leaving 757 bytes for local variables. Maximum is 2048 bytes.

After;
Sketch uses 27418 bytes (85%) of program storage space. Maximum is 32256 bytes.
Global variables use 1291 bytes (63%) of dynamic memory, leaving 757 bytes for local variables. Maximum is 2048 bytes.
2020-10-09 01:00:47 +08:00
Howard Su 3b0064b289 Mark ssb and dsp cap const when non-QCX
This tells compiler to optimized out all QCX related code. This saves 1216 bytes ROM.
2020-10-09 00:41:09 +08:00
guido f9aad1ed6b Merge experimental branch. 2020-10-07 23:49:15 +02:00
guido a6b15655ec Merge experimental branch. 2020-10-07 23:33:07 +02:00
guido 35506e0958 Fix merge issue. 2020-10-07 23:13:36 +02:00
guido 991b696404 Add guarantee for even msa divider for PLL and MS, potentially to fix RX sensitivity issue (Cees, PE1DDA). 2020-10-07 16:40:38 +02:00
guido 827d599490 Fix merge feature-5band-lpf branch. 2020-10-07 14:15:26 +02:00
guido 4ac88a1e7f Fix merge issue. 2020-10-07 14:01:22 +02:00
threeme3 23270904aa
Merge pull request #18 from howard0su/fatal
Cleanup main function
2020-10-07 13:17:51 +02:00
threeme3 9d7257c2a6
Merge branch 'experimental' into fatal 2020-10-07 13:17:38 +02:00
threeme3 f575cdc078
Merge pull request #15 from howard0su/char
Use char instead of string for print a single char
2020-10-07 13:14:37 +02:00
threeme3 ef47a7377a
Merge branch 'experimental' into char 2020-10-07 13:13:54 +02:00
threeme3 7a65a022b1
Merge pull request #14 from howard0su/size
Refactor menu render common part into functions
2020-10-07 13:11:10 +02:00
guido bc1cb60626 Merge contrib-m0pub-v2 branch, containing improved SSB filters (Tnx Alan, M0PUB). 2020-10-07 13:06:17 +02:00
guido a7954409f9 Merge hotfix R1.02i from master branch. 2020-10-07 12:53:56 +02:00
guido b0f3a44df7 Minor changes. 2020-10-06 22:16:40 +02:00
guido 16216baae1 Minor changes. 2020-10-06 13:01:21 +02:00
guido 5f757b4a7e Minor changes. 2020-10-06 11:10:23 +02:00
guido 53cfea19b4 Minor changes. 2020-10-05 14:56:23 +02:00
guido 3f113adf05 Add 2nd set experimental 600Hz CW filters. 2020-10-04 22:50:11 +02:00
guido 34944e8768 Add experimental 600Hz CW filters. 2020-10-04 13:37:16 +02:00
guido 3171d022d9 Added increased latch time to fix 60m relay switching. 2020-10-01 16:58:16 +02:00
guido 6332c3e4fb Hotfix for RX and TX spurs, caused by wrong PLL setting in R1.02h (Many thanks Bob, KD8CGH and Manuel, DL2MAN). 2020-09-30 20:55:47 +02:00
guido a577fd5fa7 Added optimized SSB filters (merge with feature-m0pub-v2 branch). 2020-09-30 19:44:01 +02:00
guido ad1e438802 Added optimized 3rd order CIC filter for better nearby alias rejection in RX. 2020-09-29 18:34:05 +02:00
guido 192eef4a17 Fix pca9539 intialisation. 2020-09-09 17:20:32 +02:00
guido dc47edeaf2 Add initial support filter bank support for DL2MAN uSDX Rev 2, containing 5 LPFs controlled by PCA GPIO extender PCA9539. 2020-09-03 17:01:29 +02:00
guido 069a89cb82 Add initial support filter bank support for DL2MAN uSDX Rev 2, containing 5 LPFs controlled by PCA GPIO extender PCA9539. 2020-09-03 15:23:31 +02:00
Howard Su 5bc8257b85 Cleanup main function
abstract fatal logic into a function
2020-08-21 17:56:33 +08:00
Howard Su a6ce311aec Refactor menu render common part into functions
This further reduce ROM size by 2128 bytes
2020-08-21 15:29:15 +08:00
Howard Su 59bcfeaee4 Use char instead of string for print single char
This reduce ROM size by 72 bytes and also reduce the intrustruction to
run in order to print one character
2020-08-21 14:45:57 +08:00
threeme3 e99c50bde4
Merge pull request #13 from howard0su/menu
Add indicate when in value changing mode
2020-08-20 16:51:07 +02:00
threeme3 a767233225
Merge pull request #12 from howard0su/keyer
Simplify logic of the key swap
2020-08-20 16:50:48 +02:00
threeme3 4284bcf97a
Merge pull request #11 from howard0su/experimental
Use an uint8_t as menuid
2020-08-20 16:50:19 +02:00
guido c6835ca8f5 Aded new SSB, CW filters (Tnx M0PUB). 2020-08-20 16:40:57 +02:00
Howard Su 2045434e04 Add indicate when in value chaning mode
Display '>' in front of the value when we are changing the value. This
make it clear that we are changing the value or changing the menu item.
2020-08-20 11:26:41 +08:00
Howard Su 56d4265786 Simplify logic to swap key
This simplifies the logic and also save about 44 bytes
2020-08-20 11:11:03 +08:00
Howard Su 3a3fd4a659 Use an uint8_t as menuid
Instead of using a string, use a integer for menuid. This saves about
178bytes
2020-08-20 11:00:24 +08:00
guido 8fb2dd723f Minor changes. 2020-08-13 13:16:33 +02:00
guido 22b3f595c7 Minor changes. 2020-08-10 17:02:54 +02:00
guido 7550788fea Minor changes. 2020-08-10 15:48:28 +02:00
guido d2c48fbce9 Minor changes. 2020-08-10 09:13:35 +02:00
guido 240fcee7eb Minor changes. 2020-08-09 18:40:14 +02:00