Go Down

Topic: 8x16 too bright (Read 354 times) previous topic - next topic

N9LON9LO

After getting my Humidity/Temperature with an 8x16 MAX7219 working with your help the display is too bright.  I've tried searching through this group trying to find how to change Intensity.  I think it needs to be set from 0-15.   Any ideas on the command I need.  Thank You.

Code: [Select]
#include <MD_Parola.h>
#include <MD_MAX72xx.h>
#include <SPI.h>

#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
#define MAX_DEVICES 2
#define CLK_PIN   13
#define DATA_PIN  11
#define CS_PIN    10

// Hardware SPI connection
MD_Parola P = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
MD_MAX72XX mx = MD_MAX72XX(HARDWARE_TYPE, DATA_PIN, CLK_PIN, CS_PIN, MAX_DEVICES);



#include <DHT.h>
#include <DHT_U.h>
#define DHTPIN A0     // Digital pin connected to the DHT sensor
#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321

DHT dht(DHTPIN, DHTTYPE);

const int buttonPin = 4;
int buttonState = 0;


void setup() {

Serial.begin(9600);
pinMode(buttonPin, INPUT);
 
  P.begin();
  dht.begin();
}

void loop() {

  buttonState = digitalRead(buttonPin);
  // Wait a few seconds between measurements.
  delay(2000);

  float h = dht.readHumidity();
  float f = dht.readTemperature(true);
  f = f - 1;
 
  if (buttonState == HIGH)
  {

   P.setTextAlignment(PA_CENTER);
   P.print(h,0);

  }else {

   P.setTextAlignment(PA_CENTER);
   P.print(f,0);

  }}

DrAzzy

See the documentation for MD_MAX72xx.h - specifically the control() function - I think it's something like mx.control(INTENSITY,number representing the intensity).

ATTinyCore and megaTinyCore for all ATtiny, DxCore for DA/DB-series! github.com/SpenceKonde
http://drazzy.com/package_drazzy.com_index.json
ATtiny breakouts, mosfets, awesome prototyping board in my store http://tindie.com/stores/DrAzzy

blh64

you need to add this line after you initialize the matrix
Code: [Select]

mx.control(INTENSITY, value);

and replace 'value' with whatever value you need.

marco_c

Use

void    setIntensity (uint8_t intensity)
or
void    setIntensity (uint8_t z, uint8_t intensity)

The first is global, the second is for one zone.

You should look at the documentation that is in your docs subfolder of the library install.

N9LON9LO

I looked in the doc folder once and did not understand anything.   This time I looked I figured some of it was HTML.  Clicked on index and there it all was.   Under MD_Parola was   P.setIntensity(5);  and I put it right below      P.begin();  .   All is well and not too bright.

Go Up