If artillery does base 2 fire damage and infantry does base 1 fire/1 shock damage, then artillery having 1/1 in fire is exactly as good as infantry having 1/1 in fire and 1/1 in shock combined. All pips do is modify base damage. Artillery not having offensive shock bonuses doesn't matter because artillery don't have relevant base shock damage (artillery not having 2 shock defense does matter though due to how artillery add defense to infantry).
Time for some actual math. We assume no general, no crossing penalties. Infantry type is Landsknechten Infantry (0/0/1/1/1/2) - which will actually be the worst type because I can't be bothered to also calculate morale casualties. We will use a dice roll result of 5.
Fire Phase Infantry
casualties = (15 + 5 * 5) * 1 * 0.80 * 1 * 1 * (1.05 / 1.5) * 1 * 1 = 22.4
Fire Phase Artillery
casualties = ((15 + 5 * 6) * 1 * 2 * 1 * 1 * (1.05 / 1.5) * 1 * 1) * 0.50 = 31.5
Shock Phase Infantry
casualties = ( 15 + 5 * 6) * 0.978 * 0.95 * 1 * 1 * (1.05/ 1.5) * 1.03 * 1 = 30.1
Shock Phase Artillery
casualties = 0
-----
Average casualties inflicted by infantry over 2 phases: 26.25
Average casualties inflicted by artillery over 2 phases: 15.75
Even frontrow cannons would only barely outperform infantry offensively, but also die like flies and be very expensive. Though admittedly the longer the fight goes on the better cannons become, however in the earlygame casualties will usually be relatively low as morale depletes quickly and units don't do much damage yet.